这是正确的解决方案
<?php $meta_cat_name = get_post_meta( $post->ID, \'related blog articles\', true ); if( !empty( $meta_cat_name ) ): $my_query = new WP_Query( array( \'category_name\' => $meta_cat_name, \'posts_per_page\' => 5, ) ); if ( $my_query->have_posts() ): while ( $my_query->have_posts() ) : $my_query->the_post(); ?> <a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a> <?php endwhile; endif; endif; wp_reset_query(); ?>
----以下原始请求和旧代码-----
由于我还没有找到一个能满足我需要的教程,我正在使用“更多字段”插件,以便在编辑帖子页面上添加部分填充的自定义字段/元框。
这些目录已经设置了键,因此用户只需输入一个值,在这种情况下,类别名称将显示该目录中的5篇文章。
除非在未输入值的情况下发布帖子,否则此操作正常。这会导致已发布的帖子也列出最近的5篇帖子。我认为这是因为它已经接到指示,有些东西正在那里,但只有一半的信息。
那么,如何使下面的代码块仅在输入值时显示?
谢谢
詹姆斯
<?php $my_query = new WP_Query(array(
\'category_name\' => get_post_meta($post->ID, \'related blog articles\', true),
\'posts_per_page\' => 5,
)); if ($my_query->have_posts()): ?>
<?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></a>
<?php endwhile; ?>
<?php endif; ?>
<?php wp_reset_query(); ?>
最合适的回答,由SO网友:Mohit Bumb 整理而成
<?php
$metacatname = get_post_meta( $post->ID, \'related blog articles\', true );
if(!(empty( $metacatname ))):
$my_query = new WP_Query( array(
\'category_name\' => $meta_cat_name,
\'posts_per_page\' => 5,
) );
if ( $my_query->have_posts() ):
while ( $my_query->have_posts() ) : $my_query->the_post(); ?>
<a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
<?php
endwhile;
endif;
endif;
wp_reset_query();
?>