web-dev-qa-db-ja.com

現在の投稿に基づいて私のtax_queryに用語を追加する方法

私は私のtax_queryの中の用語が現在の記事のものであることを必要とします。私は変数を使ってこれを試みています。変数の値はget_terms()関数を使って与えられます。

問題はそれが何も返さないということです。ただし、手動で用語を配列に入れると、正しい投稿は返されません。

投稿の用語を自動的に取得してそれらをtermsパラメータに配置する方法を教えてください。

これが私が使っているコードです。

<?php
//for use in the loop, list 5 post titles related to first tag on current post
$tags1 = get_terms($post->ID, 'b');
if ($tags1) {
echo '<div id="productsideheaders"><h2>PRODUCTS</h2></div>';
$args = array(
'tax_query' => array(
array(
'taxonomy' => 'b',
'terms' => array('$tags1'),
'field' => 'slug',

)
)
);
$query = new WP_Query( $args );
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>
<div style="width: 270px;float: left;">
<?php if ( has_post_thumbnail()) : ?>
title="<?php the_title_attribute(); ?>" >
<?php the_post_thumbnail( array(40,40) ); ?>
<span style="font-size: 10pt;">" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title('' ); ?></span></div>
<?php endif; ?>

<?php
endwhile;list
}
}
?>
2
Garret

'terms' => array( '$ tags1')、

一重引用符を削除すると、 'terms' => array($ tags1)OR 'terms' => $ tags1のようになります。

値を1つだけ使用している場合は、配列にする必要はありません。

2
Sahil Mepani
$tags1 = wp_get_post_terms($post->ID, 'b');

あなたが探しているものは何ですか?分類法やWordPressで、それはちょっと複雑になります。

get_terms はpost_idでは機能しません。カテゴリを一覧表示するだけです。

0
westondeboer