2011-09-09 22 views
0

私は現在の投稿/ページと同じタグを使用して関連する投稿をクエリしようとしていますが、これは既にグリッドを生成するために使用しているコード形式内で動作しなければなりません。Wordpressクエリ関連の投稿

<?php 
$c = 1; //init counter 
$bpr = 3; //boxes per row 
if(have_posts()) : while (have_posts()) : the_post(); ?> 
<div class="postgrid" id="post-<?php the_ID(); ?>"> 

<div class="postthumb"> 
<a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail('grid-post-image'); ?></a><div class="borderthumb"></div><div class="posttitle"><h1><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></h1> 
    <p><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>">Click for more</a></p></div> 
    </div> 
</div> 

<?php 
if($c == $bpr) : 
?> 
<?php 
$c = 0; 
endif; 
?> 
<?php 
     $c++; 
    endwhile; 
endif; 
?> 

私はこれが見つかりました:有望に見えたが、私はそれが好きで統合しようとしたとき Wordpress Querying Related Posts by tag

を...

<?php 
$c = 1; //init counter 
$bpr = 3; //boxes per row 
$test = ""; 
$posttags = get_the_tags(); 
$test = ''; 
$sep = ''; 
if ($posttags) { 
    foreach($posttags as $tag) { 
     $test .= $sep . $tag->name; 
     $sep = ","; 
    } 
} 
query_posts('tag=' .$test . '&showposts=-1'); if(have_posts()) : while (have_posts()) : the_post(); ?> 

それは、残念ながら何も発生しません。どんな助け?

ありがとうございます!私は2つのスクリプトが矛盾していると思うし、私はPHPの何もない。 spec for query_postsから

答えて

0

あなたは二次リストを作成するquery_posts()を使うべきではありません*

(例えば、ページの下部、またはサイドバーのウィジェット内のリンクのリストに関連する記事のリスト)。代わりに、あなたはWP_Queryの新しいインスタンスを作るか get_posts()を使用する必要があります*

get_posts()を試してみてください:。

$posts = get_posts('tag=' .$test); foreach($posts as $post){ setup_postdata($post); ?> 
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li> 
<? } ?> 

あなたは$testが実際に有効なタグまたはタグのセットであることを確認する必要があります。

+0

コードが動的にページに添付されたタグを見つけてそれらを示すようにする方法があります。したがって、そのページをテストでタグ付けするとテストが見つかります。しかし、別のタグを 'test2'でタグ付けすると、test2が見つかりますか?とにかくこれが私がやりたいことだと思っているだけです! – Amy