如何在WordPress首页上指定显示或排除特定分类的文章?

avatar
作者
猴君
阅读量:0
在WordPress首页指定或排除某分类文章显示,可以使用pre_get_posts钩子函数和tax_query参数进行查询。,,以下是一个示例代码片段,展示如何在WordPress首页指定或排除某分类文章显示:,,``php,function custom_homepage_query($query) {, if ($query->is_home() && $query->is_main_query()) {, $query->set('tax_query', array(, array(, 'taxonomy' => 'category', // 替换为你的分类法名称, 'field' => 'term_id', // 替换为你的字段类型,可以是'term_id'、'name'或'slug', 'terms' => array(1, 2, 3), // 替换为你想要显示的分类ID数组, 'include_children' => false, // 是否包含子分类,可以根据需要设置, ),, ));, },},add_action('pre_get_posts', 'custom_homepage_query');,`,,在上面的代码中,你需要将'taxonomy'替换为你的分类法名称,'category'表示使用默认的文章分类法。将'field'替换为你想要使用的字段类型,可以是'term_id'(分类ID)、'name'(分类名称)或'slug'(分类别名)。将'terms'替换为你想要显示的分类ID数组。,,如果你想排除某个分类,可以将'include_children'设置为false,这样它将只显示指定的分类,而不包括其子分类。,,通过将这段代码添加到你的主题的functions.php文件中,你可以实现在WordPress首页指定或排除某分类文章显示的功能。记得根据你的实际情况修改代码中的参数值。

实现方法

1、方法一:通过修改主题文件,在循环中添加条件语句来排除或包含特定分类的文章。

如何在WordPress首页上指定显示或排除特定分类的文章?

2、方法二:使用插件来实现首页显示或隐藏特定分类的功能。

3、方法三:通过创建特殊页面模板并应用WP_Query函数来控制显示内容。

具体操作步骤

方法一:通过修改主题文件

1、获取分类ID

进入WordPress后台的“分类目录”页面。

将鼠标悬停在分类名称上,浏览器状态栏会显示URL地址,其中的tag_ID即为该分类的ID。

2、编辑主题文件

打开主题编辑器(外观 > 主题编辑器)。

找到并编辑index.php或home.php文件。

3、添加条件语句

在循环开始之前添加以下代码来排除特定分类的文章:

```php

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<?php if (is_home() && in_category('分类ID')) continue; ?>

```

分类ID替换为实际的分类ID。

若要在首页仅显示特定分类的文章,可以将上述代码中的continue;改为break;,并将in_category替换为!in_category

方法二:使用插件

如何在WordPress首页上指定显示或排除特定分类的文章?

1、安装插件

在WordPress后台的“插件”>“添加新”页面搜索并安装“Advanced Archives Excluder”等类似插件。

2、配置插件

根据插件说明进行设置,选择要排除或包含的分类。

方法三:创建特殊页面模板

1、复制模板文件

将主题中的index.php文件复制一份,命名为tips.php。

2、编辑模板文件

在tips.php文件顶部添加以下代码以定义模板名称:

```php

/

Template Name: tips

*/

```

在循环开始之前添加WP_Query函数,指定要显示的分类ID:

```php

$args = array(

'cat' => 分类ID, // 'cat' => 14

如何在WordPress首页上指定显示或排除特定分类的文章?

);

$query = new WP_Query($args);

if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post();

```

分类ID替换为实际的分类ID。

3、创建新页面并应用模板

在WordPress后台创建新页面,选择刚才创建的tips模板作为页面模板,并发布页面。

相关问题与解答

1、问题一:如何确保首页不显示某个分类下的文章?

解答:可以通过在主题文件的循环中添加条件语句来实现,具体操作是,在index.php或home.php文件中,找到循环开始的地方,添加如下代码:

```php

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

<?php if (is_home() && in_category('分类ID')) continue; ?>

```

分类ID替换为实际的分类ID即可。

2、问题二:如何在首页仅显示特定分类的文章?

解答:可以通过创建特殊页面模板并使用WP_Query函数来实现,首先复制主题中的index.php文件,命名为例如tips.php,然后在tips.php文件顶部定义模板名称,并在循环开始之前添加WP_Query函数,指定要显示的分类ID,在WordPress后台创建新页面,选择创建的tips模板作为页面模板,并发布页面。

以上内容就是解答有关WordPress首页指定或排除某分类文章显示的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!