サポート » 使い方全般 » リンク集ページの説明欄を複数行にし適所で改行したい。

  • 色々調べてみたのですがわからず どうかお願いいたします。

    wp_list_bookmars() 関数を使ってリンク集ページを作成しました。
    説明も表示設定にしているのですが、
    長くなるので複数行で適所に改行をいれたく思います。

    ダッシュボードのリンクの説明で入力時に
    を入れても
    更新を押すと消えてしまい、
    どこをどういじったらいいのかわかりません…。

    どなたかどうぞ宜しくお願いいたします!

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック投稿者 RamJamCat

    (@ramjamcat)

    すみません!消えちゃっていました!

    (5行目からです)
    ダッシュボードのリンクの説明で入力時に
    brタグを入れても

    です。
    よろしくお願いいたします。

    次の記事はカテゴリーの例ですが、リンクの説明の場合も同じようにしてフィルターを解除することが出来ます。
    http://kihon-no-ki.com/wordpress-category-description
     
    リンクの説明のフィルターフックはpre_link_descriptionです。

    remove_filter( 'pre_link_description', 'wp_filter_kses' );

    プラグイン API/フィルターフック一覧 – Codex 日本語版
     
    特定のHTMLタグだけを許可する場合は、次の記事を参考にして、pre_link_descriptionにフックした関数でwp_kses()を利用し、不要なHTMLタグを除いた文字列を返すようにするといいです。
    http://www.mee77.com/2011/09/614/
    http://code1616.net/wordpress/entry-22.html
     
    関数リファレンス/add filter – Codex 日本語版

    モデレーター jim912

    (@jim912)

    RamJamCatさん、popupさん、こんにちは。

    フィルター解除だと入力は出来ますが、wp_list_bookmarksで出力される際にエスケープされて、タグがそのまま出てしまいます。
    また、descriptionは、リンクのtitleや画像のalt属性などにも利用されることになるため、それも合わせて考える必要があります。

    トピック投稿者 RamJamCat

    (@ramjamcat)

    popupさん、jim912さん ご返信有難うございます!

    そうですね、remove_filter( ‘pre_link_description’, ‘wp_filter_kses’ );
    新しい発見でワクワクしました!今後の参考にさせていただきます。

    しかし、今回はそうなのです、実際の表示で改行がしたいのです。
    なるほど、descriptionは説明だけの用途ではないのですね。

    う~ん…

    wp_list_bookmarks()ではなく、get bookmarks()で表示させてはいかがでしょうか?
     
    テンプレートタグ/get bookmarks – Codex 日本語版
    返り値は次のページを参考にするか、var_dump()で確認するといいです。
    http://elearn.jp/wpman/function/get_bookmarks.html

    トピック投稿者 RamJamCat

    (@ramjamcat)

    popupさん ありがとうございます!

    ごめんなさい。<?php get_bookmarks(); ?> を入力してみたのですが
    何も表示されず… こちら以外にも何か記入が必要になるのでしょうか?
    本当に理解ができていなくて申し訳けございません…。

    <?php $link = get_bookmarks(); ?>
    var_dump( $link );
    ?>

    で 教えていただいたとおり確認したところ 内容はちゃんと入っておりました。

    get_bookmarks()は、返り値を使用して自分で表示調整して利用します。
    次のコードの場合、リストタグで1行目に名前にリンク、2行目にリンクの説明を表示します。

    出力されるコードの一部

    <li><a href="リンク先URL">リンクの名前</a><br />
    リンクの説明</li>

     
    出力用コード

    <?php $links = get_bookmarks();
    echo "<h2>Favorite Links</h2>\n<ul>\n";
    foreach($links as $key => $link) {
    	echo '<li><a href="' . $link->link_url . '">' . $link->link_name . "</a><br />\n";
    	echo $link->link_description . "</li>\n";
    }
    echo "</ul>\n";
    ?>

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「リンク集ページの説明欄を複数行にし適所で改行したい。」には新たに返信することはできません。