フォーラム

[解決済み] カスタムフィールドの特定のキーと値を非表示にするには? (5 件の投稿)

  1. hanatomikan
    メンバー
    1 年前の投稿 #

    WordPress2.6.2を使用してサイトを作成しております。

    イベントの告知ページでカスタムフィールドを使用してイベントスケジュールを表示していますが、併用しているAll in One SEO Pack(バージョン 1.4.6.14)で入力したキーワードが「keywords」としてカスタムフィールドに自動で追加されてしまうので、それまでページに表示されて困っています。
    下記のような表示になっています。

    期間:00月00日~00月00日
    場所:○○○
    keywords:aaa,bbb,ccc ←このキーと値だけ表示させたくない。

    この「keywords」などのように特定のキーとその値を非表示にするにはどのようにすれば良いのでしょうか?

    参考書を元に下記のようにしてカスタムフィールドを表示するようにしています。

    `<table summary="スケジュール">
    <?php
    $mykeys = get_post_custom_keys();
    foreach ($mykeys as $mykey) {
    if (preg_match('#^_#', $mykey)) {
    continue;
    }
    echo "<tr><th>";
    echo $mykey;
    echo "</th><td>";
    echo get_post_meta($post->ID, $mykey, TRUE);
    echo "</td></tr>";
    }
    ?>
    </table>`

    皆様、ご教授いただけますようよろしくお願いいたします。

  2. taikiken
    メンバー
    1 年前の投稿 #

    この「keywords」などのように特定のキーとその値を非表示にするにはどのようにすれば良いのでしょうか?

    ではなく、必要なキーだけ表示するようにしてはどうでしょう。

    テンプレートタグ
    get_post_meta($post->ID, $key, true);

    プラグイン
    Get Custom Field Values
    http://coffee2code.com/wp-plugins/get-custom-field-values/

  3. hanatomikan
    メンバー
    1 年前の投稿 #

    taikikenさま
    ご返答ありがとうございます。

    ではなく、必要なキーだけ表示するようにしてはどうでしょう。

    それも考えたのですが、イベントによってキーが変更されるので表示したくないキーを指定できる方が良いのです。
    条件について説明不足で申し訳ありませんでした。

  4. shokun0803
    メンバー
    1 年前の投稿 #

    All in One SEO Packが挿入するキーが必ず同一で、ご自分で入れるキーとかぶらないのであれば、
    if (strcmp($mykey, 'keywords') == 0) {continue;}
    のような記述を追加でいけませんかね。

  5. hanatomikan
    メンバー
    1 年前の投稿 #

    shokun0803さま
    ご返答ありがとうございます。

    ご提示いただいたif文を入れると思い通りの表示になりました!

    この度は、お2人からご返答いただき大変感謝いたしております。
    ありがとうございました。

返信

ログイン しなければ投稿できません。

About this Topic