LightBoxで画像のタイトルを表示する

| コメント(0) | トラックバック(0)

LightBoxプラグインで自動化という記事で、「a要素にrel="lightbox"を毎回書くのは大変なので、自動化させたいが、ソースコードを書きかえるのは面倒だし、間違いのもとにもなりですし、かといって完全に自動化するのもどうか?」と書きましたが、LightBoxで画像のタイトルを表示させるには、画像へのアンカーにtitle属性がないといけません。LightBoxを使わないにしろ、title属性が有るに越したことはありません。

というわけで、禁断のソースコードに手を加えます(笑)必ずバックアップを取ってください。

mt/lib/MT/Asset/Image.pmに手を加えます。334行目あたりの

if ( $param->{thumb} ) {
    $text = sprintf(
        '<a href="%s"><img alt="%s" src="%s" %s %s /></a>',
        MT::Util::encode_html( $asset->url ),
        MT::Util::encode_html( $asset->label ),
        MT::Util::encode_html( $thumb->url ),
        $dimensions,
        $wrap_style,
    );
}

if ( $param->{thumb} ) {
    $text = sprintf(
        '<a href="%s" title="%s"><img alt="%s" src="%s" %s %s /></a>',
        MT::Util::encode_html( $asset->url ),
        MT::Util::encode_html( $asset->label ),
        MT::Util::encode_html( $asset->label ),
        MT::Util::encode_html( $thumb->url ),
        $dimensions,
        $wrap_style,
    );
}

と書きかえれば、画像へのアンカーにtitle属性が付加されます。一応アイテムの名前が、title="アイテムの名前"というふうに挿入されます。

参考までに、

MT::Util::encode_html( $asset->label ),

MT::Util::encode_html( $asset->description ),

とすれば、アイテムの概要が挿入されます。

関連エントリー

トラックバック(0)

トラックバックURL: http://www.shikidahironori.jp/mt/toraxtukubaxtukuspam.cgi/1221

コメントする