cotenthe

アイテムの挿入でファイル名ではなく名前で挿入して欲しい

0

記事文中へのアイテム挿入で現在はアイテムファイル名が入りますが
ファイル名ではなく名前(MTAssetLabel)で挿入するようにして欲しいです

返信(8)

| 返信する
  • 何かおかしなプラグインでも使ってないですか?
    src属性はファイル名でなければおかしいし、alt属性にはちゃんとアイテム名が入りますよ。
    アイテム名を付けていないとか・・・

    • src属性はファイル名になっています。
      しかしファイル名よりも名前(アイテム名)の方が良いかなと
      サイトによっても変わってくるところだとは思いますが…

      現時点でもシステムファイルの編集でいけかもしれませんね、調べてみます

      • src属性にアイテム名使うんですか?
        それは、通常有り得ないと思いますが・・・
        それこそ特定の案件だけの、オレオレ仕様なのでは?
        一応Assetyleneていうプラグインで、挿入されるマークアップはいじれますので、そちらで対応したらどうですか?

  • srcではなくリンクされる文字列ですね…

    <a href="[url]"><$MTAssetFileName$></a>
    
    
    <a href="[url]"><$MTAssetLabel$></a>
    
    にして欲しいなと
    • あぁ、なるほど。アイテムってファイルの事を指してるんですね。確かに画像はアイテム名がaltに使われるけど、ファイルの場合はファイル名がリンクテキストですね。
      ただ、コレってどっちが正しいのか、迷いますね。
      管理側の名称と公開用の名称は、必ずしも等しくはならないので、変えてしまって良いいものかは疑問です。

  • >cotentheさん
    lib/MT/Asset.pmの以下の関数の8行目を修正すればご要望の動作になります。

    変更前

    sub as_html {
        my $asset = shift;
        my ($param) = @_;
        my $fname = $asset->file_name;
        require MT::Util;
        my $text = sprintf '<a href="%s">%s</a>',
            MT::Util::encode_html($asset->url),
            MT::Util::encode_html($fname);
        my $app = MT->instance;
        return $param->{enclose} ? $asset->enclose($text) : $text;
    }

    変更後

    sub as_html {
        my $asset = shift;
        my ($param) = @_;
        my $fname = $asset->file_name;
        require MT::Util;
        my $text = sprintf '<a href="%s">%s</a>',
            MT::Util::encode_html($asset->url),
            MT::Util::encode_html($asset->label),
        my $app = MT->instance;
        return $param->{enclose} ? $asset->enclose($text) : $text;
    }
  • ドンピシャな情報ありがとうございます
    さっそく試してみます

    CMSとして使ってると結構このような要望はあると思います

返信する


カテゴリグループ

フォーラムカテゴリー

21 76

最新のトピック: 公開終了日の取り消し (2013年10月18日 gsk)

178 552

最新のトピック: ユーザへアカウント発行通知 (2014年1月27日 cmtskt)

143 426

最新のトピック: アイテム・カスタムフィールドの連動 (2013年12月16日 kazuhiro watanabe)

291 819

最新のトピック: 検索についての質問 (2014年1月23日 noble777)

OpenID対応しています OpenIDについて