Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何不显示带有特定标签的帖子?_Php_Wordpress_Tags - Fatal编程技术网

Php 如何不显示带有特定标签的帖子?

Php 如何不显示带有特定标签的帖子?,php,wordpress,tags,Php,Wordpress,Tags,为了得到帖子,我运行了这段代码 <?php if ( have_posts() ) : ?> <?php // The loop ?> <?php while ( have_posts() ) : the_post(); ?> <?php get_template_part( 'content', get_post_format() ); ?> <?php endwhile; ?> <?php twentythirteen_pa

为了得到帖子,我运行了这段代码

<?php if ( have_posts() ) : ?>
<?php // The loop  ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php get_template_part( 'content', get_post_format() ); ?>
<?php endwhile; ?>
<?php twentythirteen_paging_nav(); ?>
<?php else : ?>
<?php get_template_part( 'content', 'none' ); ?>
<?php endif; ?>
我想返回只是没有一些具体标签的帖子。 我怎么做呢


提前谢谢

您可以使用条件函数:

$args=array("tag__not_in"=>array(1,2,3));
$the_query = new WP_Query( $args ); ?>

<?php if ( $the_query->have_posts() ) : ?>

  <!-- the loop -->
  <?php while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
    <h2><?php the_title(); ?></h2>
  <?php endwhile; ?>

  <?php wp_reset_postdata(); ?>
<?php if ( have_posts() ) : ?>
<?php // The loop  ?>
<?php while ( have_posts() ) : the_post(); ?>
  <?php if( ! has_tag( 'tag-name' ) ) : ?>
    <?php get_template_part( 'content', get_post_format() ); ?>
  <?php endif; ?>
<?php endwhile; ?>
<?php twentythirteen_paging_nav(); ?>
<?php else : ?>
<?php get_template_part( 'content', 'none' ); ?>
<?php endif; ?>

请注意,has_标记接受单个标记名或标记数组,因此如果有多个标记要忽略,可以在上面的代码中使用if has_标记数组“tag1”、“tag2”、“tag3”。此外,has_标记只能在循环中使用。更正:根据,只有在WP版本2.7之前,您才需要参与循环

你这个摇滚小子!再好不过了!谢谢!如果这对您有效,请将答案标记为已接受-问题左侧应有一个复选标记,以便您可以这样做。有关详细信息,请参阅。
<?php if ( have_posts() ) : ?>
<?php // The loop  ?>
<?php while ( have_posts() ) : the_post(); ?>
  <?php if( ! has_tag( 'tag-name' ) ) : ?>
    <?php get_template_part( 'content', get_post_format() ); ?>
  <?php endif; ?>
<?php endwhile; ?>
<?php twentythirteen_paging_nav(); ?>
<?php else : ?>
<?php get_template_part( 'content', 'none' ); ?>
<?php endif; ?>