こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Wordpressにおいてカスタム投稿の読み込み

Wordpressにて美容系ポータルサイトを作っています。
お店情報のカスタム投稿
口コミのカスタム投稿
の二つ、そしてトップページとの連動を作りたいと思っています。

まずはお店情報にはサロン名やら営業時間やらキャンペーンメニューなどがポストタイプ(salon_posttype)にて入っています。

口コミには行ったサロン名や、感想、名前などがポストタイプ(review_posttype)で入っています。

そこでお店情報のページに、
そのお店の口コミの投稿を表示させたいと思っています。

つまり、review_posttypeにて入れた、'salonname'のキーがそのページのページ名=(サロン名)と同じであれば表示、で行けるかなと構文を書きましたが、ここからがわかません。

<?php query_posts('&post_type=review_posttype'); while(have_posts()) : the_post(); ?>

<?php if( get_post_meta(get_the_ID(), 'salonname', true) != '' ):?>
↑↑↑ここを"もしsalonname=今見ているページの題名なら"にしたいです。↑↑↑

<p class="title"><?php echo get_post_meta(get_the_ID(), 'salonname', true);?></p>
<p class="naiyou"><?php echo get_post_meta(get_the_ID(), 'review_naiyou', true);?></p>
<p class="detail"><a href="<?php the_permalink() ?>">詳しくはこちら</a></p>

<?php endif;?>
<?php endwhile; ?>
<?php wp_reset_query(); ?>

どこをどうしたらいいでしょうか?そもそもここまでも合っていますか?

投稿日時 - 2012-12-01 16:17:11

QNo.7824621

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

WordPressのバージョンは3.1以上なら
meta_queryを使ってquery_postsしたほうがスマートかと思います

<?php query_posts('&post_type=review_posttype'); while(have_posts()) : the_post(); ?>




<?php
$current_page_title=get_the_title();
query_posts(array(
'post_type'=>'review_posttype',
'meta_query'=>array(
array(
'key'=>'salonname',
'value'=>$current_page_title
)
)
));
while(have_posts()) : the_post();
?>


ベタ打ちなのでどこか間違ってるかも

参考URL:http://wpdocs.sourceforge.jp/関数リファレンス/WP_Query

投稿日時 - 2012-12-02 19:49:19

お礼

ありがとうございます。
上記のように書いてみたのですが、その箇所には何も表示されずでした。。。

またifを使った新着何件までみたいな条件もつけたいです。(こちらはトップページ用です)

投稿日時 - 2012-12-04 15:35:00

あなたにオススメの質問