HTML ソースを書く場合はバッククォートで囲んでください。そうなってないので、説明文が意味不明になっています……。
img 要素を a タグで囲んでいる場合は、a タグの部分を img 要素の後に移動させるという処理が入っています。その影響だと思われます。説明文を書き直してもらえれば、対処法が分かるかと思いますので、対応をお願いします。
トピック投稿者
725574
申し訳ありません(指摘有難うございます)
ソース表示で再度投稿させて頂きます。
Ktai Style1.4.2を使用させて頂いてます。
function ks_direct_external_link($link_html, $href, $label) {
return '' . $label . '';
}
add_filter('external_link/ktai_style.php', 'ks_direct_external_link', 90, 3);
functions.phpに上記を書いてあげれば外部リンクへ直接訪問できますが、リンク先が画像ファイルの場合はリンク表示がおかしくなります。
どのようにおかしくなるのかというとリンク先がHTMLの場合ですと通常通りにリンクされます。
リンク先が画像の場合はリンクの囲みがおかしくなります
htmlの場合
これが画像です→<a href="http://www.○○.com/a.html">クリック</a>
クリックがリンクの囲みになります(正常)
jpgなど画像の場合
これが画像です→<a href="http://www.○○.com/a.jpg">クリック</a>
これが画像です→クリックがリンクの囲みになってしまいます。
jpgなどの画像への直リンの場合もhtmlみたいにクリック部分だけをリンクの囲みになるようにしてもらいたいです。
よろしければアドバイスや修正などをお願い致します。
return '' . $label . '';
これだと一律にリンク削除になってしまいます。ドキュメントに従うと、以下が正解です。
return '<a href="' . attribute_escape($href) . '">' . $label . '</a>';
(CUSTOMIZE.ja.html は誤記があって </a>
が見えなくなっています)
念のため確認ですが、このお手製フィルターを解除したときはどういう動作になっていますか?
あと、www.○○.com はあなたのウェブサイトのアドレスでしょうか?
余談ですが、ドメイン名の例示には example.com, example.jp などのドメインが用意されています。○○.com というのはおそらく取得不可能なドメインなので、サンプルとして使ってもあまり問題ないとは思いますが、example.com の方が分かりやすいため、こちらを使ってみてください。
トピック投稿者
725574
レス有難うございます!
return '' . $label . '';
これだと一律にリンク削除になってしまいます。ドキュメントに従うと、以下が正解です。
return '<a href="' . attribute_escape($href) . '">' . $label . '</a>';
(CUSTOMIZE.ja.html は誤記があって </a> が見えなくなっています)
了解致しました。
コードをこちらで教えて頂いたようにすると、問題は解決しました。
通常のリンクになっておりました。
念のため確認ですが、このお手製フィルターを解除したときはどういう動作になっていますか?
解除した場合は、リンクは通常のリンクになってました。
リンクの囲みの前に↑(右斜め上矢印)が表示されていました。
(PC専用サイトの場合)
example.comを使うのが常識なってたのは知りませんでした。(勉強になりました)
次回から example.comを使用させて頂きます。
丁寧に教えて頂き有難うございました。
無事に出来ました。