如果发布元等于当前标题条件高级自定义域

时间:2012-10-03 作者:joachim

我想创建一个自定义查询循环,根据当前帖子标题显示数据。

伪代码:

if post title = custom filed 
    Show related content
我有一个页面叫做artists 由自定义字段组成,我想为这位艺术家展示唱片库。通过仅从另一个自定义帖子类型的discography帖子中提取具有艺术家姓名的帖子。

我发现this page 这很接近,但并不完全正确。

我有一个自定义的帖子类型,叫做discography, 在这个帖子类型中,我有一个自定义字段,名为dis_artist.

我一直无法说出当前艺术家“post title”=“dis\\u artist”是否显示其他数据。我该怎么做?

嗨,我试过了,但我不确定我的语法是否正确。这段代码位于当前post循环中

<?php
$args = array( \'post_type\' => \'discography\', \'posts_per_page\' => -1 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); ?>            
<?php
if ( get_the_title() === get_post_meta( get_the_ID(), "dis_artist", true ) ) {   ?>
<?php the_title(); ?>
<?php }    ?>        
<?php endwhile; ?>

3 个回复
SO网友:kaiser

应该像这样简单-只要你dis_artist 元键不包含数组。

if ( get_the_title() === get_post_meta( get_the_ID(), "dis_artist", true ) )
{
    // do stuff
}

SO网友:Jonathan

是否使用高级自定义字段?它们有自己的内置函数来查找自定义字段。

if (get_field(\'dis_artist\'))
{
   //do stuff here
   // the_field(\'dis_artist\') is the same as $dis_artist = dis_artist; echo $dis_artist
}
你的标题有点混乱。

如果将ACF字段设置为变量,则可以在循环内对其进行测试:

 if (get_field(\'your_acf_field\')
 {
    $your_acf_field = get_field(\'your_acf_field\');
 }


$args = array( \'post_type\' => \'discography\', \'posts_per_page\' => -1 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();

if ($your_acf_field == the_title()) : echo the_title();

else :

 //do something else here if it is not

endif;

<?php endwhile; ?>
此代码未经测试,因此您可能需要对其进行调整。但它会测试acf字段是否已设置,如果已设置,则会将其设置为变量。在循环内部,测试标题是否等于变量。如果是,则显示它。如果没有,您可以让它执行其他操作,如echo“未找到”;

SO网友:joachim

嗨,我试过了,但我不确定我的语法是否正确。这段代码位于当前post循环中

<!-- Start the main loop -->
<?php the_title(); ?>
我想使用此标题作为查询自定义字段的主要参考

<?php
$args = array( \'post_type\' => \'discography\', \'posts_per_page\' => -1 );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); ?>            
<?php
if ( get_the_title() === get_post_meta( get_the_ID(), "dis_artist", true ) ) {   ?>
<?php the_title(); ?>
<?php }    ?>        
<?php endwhile; ?>

<?php endwhile; ?> <!-- End the main loop -->

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在