サポート » 使い方全般 » 複数のカスタムフィールドを使って投稿記事を分類表示するには

  • 同じ独立ページに、カスタムフィールドとタグを両方使って投稿記事を表示しようとしてますがうまくいってません。どなたか助言頂けるとありがたいです。

    この独立ページの構造ですが、以下のようなdiv要素(idがvoice1とvoice2)を二つ用意してあります。最初のVoice1にはmeta_keyがemploymentというカスタムフィールドを使った投稿記事を、voice2にはmeta_keyがcontent_orderというカスタムフィールドを使った投稿記事を表示したいと思ってます。

    結果、voice1には思い通りの結果を表示できるのですが、voice2にはなぜかget_the_title()がうまく動作しないのか、この独立ページに限定されるわけでもなく、サイトに使用されているすべてのcontent_orderがついている投稿記事が表示されてしまいます。

    <div id=”voice1″>
    <?php
    $args = array(
    ‘category_name’ => get_the_title(),
    ‘meta_key’ => ‘content_order’,
    ‘orderby’ => ‘meta_value’,
    ‘order’ => ‘ASC’
    );
    query_posts($args);
    ?>

    <?php if(have_posts()): while(have_posts()): the_post();
    $the_title = the_title( ”, ”, false );
    if ( $the_title != ” ) :
    ?>
    <div id =”title_content”><span><?php echo $the_title; ?></span></div>
    <?php
    endif;
    the_content(); ?>

    <?php endwhile; endif; ?>
    </div>

    ちなみに以下のthreadを参考にしてみましたがうまく行きませんでした。
    http://ja.forums.wordpress.org/topic/1731?replies=3

    よろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • voice1には思い通りの結果を表示できる

    掲示していただいたのはvoice1のものなのでしょうか。

    でも'meta_key' => 'content_order',というカスタムフィールドはvoice2のものですよね?

    また、$the_title = the_title( '', '', false );とありますが、
    the_title()ではなくてget_the_title()を使ってみるほうが良いような気がします。

    あとendif;のあとにthe_content();があるのは…?
    きちんと表示されていればいいのですが、とまあ、余計かもしれませんが。

    トピック投稿者 taquito2007

    (@taquito2007)

    早速の投稿ありがとうございます。

    うまく表現できてなくて申し訳ないです。
    content_orderはvoice2用に作成してあります。

    if ( $the_title != ” ) :
    ?>
    <div id =”title_content”><span><?php echo $the_title; ?></span></div>
    <?php
    endif;
    the_content(); ?>
    の部分は投稿画面でタイトルが記入されていない場合はタイトル部分は空表示するように組んであります。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「複数のカスタムフィールドを使って投稿記事を分類表示するには」には新たに返信することはできません。