コンテンツへスキップ

Fancybox for WordPressをちょっと改造

  • by

画像をかっこよく表示しれくれるFancybox for WordPressですが、1点困ったことがありました。

Fancybox for WordPressの設定には、画像を開いたときに、タイトルを付けられるオプションがあります。

「設定」→「Fancybox for WP」のAppearanceタブで、Show tht titleをチェックすれば…あれ?

そう、上記の設定がONになっても、タイトルが表示されないんです。

「プラグイン」→「インストール済みのプラグイン」でFancybox for WordPressのとこのろ編集をクリックすればソースが見れるので、それらしいとこを探してみると発見。

以下がその部分のソース。

jQuery.fn.getTitle = function() { // Copy the title of every IMG tag and add it to its parent A so that fancybox can show titles
    var arr = jQuery("a.fancybox");
    jQuery.each(arr, function() {
        var title = jQuery(this).children("img").attr("title");
        jQuery(this).attr('title',title);
    })
}

つまりは、imgタグのtitleに設定されたテキストを表示するようになっているのですが、WordPressでは、imgタグにtitle設定はデフォルトではできません。

なので、一行、プログラムを追加(赤字部分)。

jQuery.fn.getTitle = function() { // Copy the title of every IMG tag and add it to its parent A so that fancybox can show titles
    var arr = jQuery("a.fancybox");
    jQuery.each(arr, function() {
        var title = jQuery(this).children("img").attr("title");
        /* Modified by Ken Ta 20140912 **************** */
        if (!title) { title = jQuery(this).children("img").attr("alt"); }
        jQuery(this).attr('title',title);
    })
}

つまり、titleに値がなければimgタグのaltの値をtitleに設定する。

これで無事にaltに設定されたタイトルが表示されるようになりました!

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください