欢迎来到HELLO素材网! 南京网站制作选择顺炫科技
丰富的DIV CSS模版、JS,jQuery特效免费提供下载
当前位置:主页 > 建站教程 > CMS教程 >

wordpress首页如何扫除指定分类的文章

发表于2019-04-21 03:04| 次阅读| 来源网络整理| 作者session

摘要:wordpress首页如何扫除指定分类的文章

假设你不宿愿在首页上显示上显示本人生存类的文章,而只显示一些旧事类的文章,那如何完成呢……
  
  要做到这一点,你就需求在 The loop 中更改调用文章的函数。WordPress默许主题 Twenty Ten 和 Twenty Eleven 利用 the_post() 函数来调用一切的博客文章。
  
  <?php while ( have_posts() ) : the_post(); ?>
  
  the_post() 函数利用 WP_Query。咱们可能利用 WP_Query 函数自身来自定义哪些文章被调用,或许哪些存档、分类、工夫的文章可能显示在主页。
  
  另外,咱们还可能利用 query_posts 函数来控制 The Loop 循环。这种方法无疑是最好的,由于它并没有扭转你的循环。下面讲讲这两种方法,你可能抉择一个适宜你的。
  
  步骤/方法
  
  1
  
  利用函数WP_Query
  
  如 果你想扭转你的主页显示效果,你需求编辑主题index.php文件。大局部主题利用archive.php文件来作为分类(category)、工夫 (date)、标签(tag)的的显示页面, 所以想更改某个存档页面只需修正archive.php文件就可能了。还有一些主题有专门的category.php、date.php、tag.php 模板,修正相对应的就好。
  
  大少数主题文件的循环会以“Start the Loop”末尾。例如在Twenty Eleven主题中,看起来像这样:
  
  <?php /* Start the Loop */ ?>
  
  <?php while ( have_posts() ) : the_post(); ?>
  
  需求交流为以下函数:
  
  // The Query
  
  $query = new WP_Query( $args );
  
  // The Loop
  
  while ( $query->have_posts() ) : $query->the_post();
  
  要控制哪些文章在循环中显示,需求定义在WP_Query中的参数,即修正
  
  $query = new WP_Query( $args );.
  
  目前有5种参数,比较常用的是参数是 cat 和 category_name 。
  
  若你要显示你的 tech 分类,而它的分类ID是1,那么你可能利用参数cat:
  
  $query = new WP_Query( ‘cat=1′ );
  
  或许可能利用参数 category_name 来达到异样的效果:
  
  $query = new WP_Query( ‘category_name=tech’ );
  
  若想多减少几个分类,则需求用逗号分隔。
  
  $query = new WP_Query( ‘cat=1,7,121′ );
  
  或
  
  $query = new WP_Query( ‘category_name=news,reviews,tutorials’ );
  
  在分类ID前加上减号来扫除某一类的一切文章。留意,不可能利用category_name 参数来扫除类别。
  
  $query = new WP_Query( ‘cat=-1′ );
  
  在上面说过,有5种参数,我已经讲解了其中两个:cat 和 category_name,都是从文章列表中蕴含或扫除某些类别。
  
  其余三个参数是 category_and、category_in和category_not_in。
  
  category_and显示多个分类的文章:
  
  $query = new WP_Query( array( ‘category__and’ => array( 1, 7 ) ) );
  
  category_in是一个or函数:
  
  $query = new WP_Query( array( ‘category__in’ => array( 7, 127 ) ) );
  
  扫除多个类别:
  
  $query = new WP_Query( array( ‘category__not_in’ => array( 2, 6 ) ) );
  
  WP Query是一个十分灵敏的性能函数。分类只是其中的一个参数而已,还可能利用:
  
  Author Parameters – 显示某个作者或多个作者的文章列表,也可能扫除之。
  
  Tag Parameters – 显示或扫除某些Tag的文章列表。
  
  Taxonomy Parameters – 显示一个或多个自定义分类的文章列表。.
  
  Post & Page Parameters – 利用IDs 或 page slugs显示某些特定的文章。
  
  Type & Status Parameters – 显示某些文章类型的文章或带有附件的文章。
  
  Pagination Parameters – 确定每页显示的文章数量。
  
  Offset Parameter – 文章从某哪末尾显示。
  
  Order & Orderby Parameters – 更改文章列表的陈列顺序。
  
  Sticky Post Parameters – 显示包括或扫除置顶文章的文章列表。
  
  Time Parameters – 显示某些工夫段的文章。
  
  Custom Field Parameters – 显示相干自定义字段的文章。
  
  Permission Parameters – 显示发布的或私密的文章。
  
  WP_Query 页面为每个参数都提供了例子,这里就不逐一讲解详细用法了。
  
  2
  
  利用函数query_posts
  
  query_posts可能十分简略的定制你在页面上显示的文章,而且你不必更改现有的循环代码。
  
  query_posts( $args );
  
  要利用它的性能,你就必须在你的loop循环末尾之前调用它。例如:
  
  // The Query
  
  query_posts( $args );
  
  // The Loop
  
  while ( have_posts() ) : the_post();
  
  假设你方案调用页面中的第二个循环,请确保你利用了wp_reset_query()来重置你的循环。例如:
  
  // The Query
  
  <?php query_posts( $args ); ?>
  
  <?php /* Start the Loop */ ?>
  
  <?php while ( have_posts() ) : the_post(); ?>
  
  <?php get_template_part( ‘content’, get_post_format() ); ?>
  
  <?php endwhile; ?>
  
  <?php wp_reset_query(); ?>
  
  要显示某些分类的文章,你需求用到 cat 参数:
  
  <?php query_posts( ‘cat=1,5,6′ ); ?>
  
  异样,要扫除某些分类,你需求在后面减少减号:
  
  <?php query_posts( ‘cat=-3,-5′ ); ?>
  
  还可能用来显示特定的文章:
  
  query_posts( ‘p=2′ );
  
  要定义每页显示文章的数量,你可能利用 posts_per_page 参数:
  
  query_posts( ‘posts_per_page=5′ );
  
  想要了解更多的信息,请访问query_posts页面。
  
  利用插件来扫除某些分类的文章
  
  3
  
  利用WordPress插件
  
  对于那些对代码不太感冒的冤家,也可能利用WordPress插件。这里建议利用Simply Exclude和Ultimate Category Excluder。
  
  Simply Exclude
  
  Simply Exclude可能让你在首页、归档页、搜查页、RSS中扫除或蕴含某些分类、作者、标签的文章,利用起来也十分简略。
  
  Ultimate Category Excluder
  
  Ultimate Category Excluder,能让你容易的扫除某些分类在主页、存档页和RSS中。不同于Simply Exclude的是他只能扫除某些分类,不能扫除作者、标签等。
  
  总结
  
  只管Simply Exclude和Ultimate Category Excluder插件都很不错,但假设你有肯定的编程根底,那么你还是手动修正吧。
  
  留意事项
  
  修正前请先备份好你的主题,万一弄错,只需恢复就可能了