PHP速学教程(入门到精通)
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
本文将指导你如何在 WordPress 的 archive.php 页面中排除特定分类的文章。正如上面摘要所述,我们将利用 WordPress 提供的钩子和函数来修改默认的查询行为,从而达到过滤特定分类文章的目的。
pre_get_posts 是一个强大的钩子,允许你在 WordPress 执行主查询之前修改查询参数。我们可以利用这个钩子来排除特定分类的文章。以下是具体步骤:
打开 functions.php 文件:
找到你主题的 functions.php 文件。通常位于 wp-content/themes/your-theme-name/functions.php。 注意:强烈建议使用子主题,避免直接修改父主题的 functions.php 文件,以免主题更新导致修改丢失。
添加以下代码:
function exclude_category( $query ) { if ( $query->is_archive() && $query->is_main_query() ) { $query->set( 'cat', '-3' ); // 将 '3' 替换为你想要排除的分类 ID } } add_action( 'pre_get_posts', 'exclude_category' );
代码解释:
保存 functions.php 文件。
刷新你的归档页面。
现在,你应该看不到 ID 为 3 的分类下的文章了。
如果需要排除多个分类,只需在 cat 参数中使用逗号分隔的负数 ID 列表即可。例如,要排除 ID 为 3、4 和 5 的分类,代码如下:
function exclude_category( $query ) { if ( $query->is_archive() && $query->is_main_query() ) { $query->set( 'cat', '-3,-4,-5' ); } } add_action( 'pre_get_posts', 'exclude_category' );
如果你想只显示特定分类,而不是排除某些分类,可以将 cat 参数设置为正数 ID 列表。例如,要只显示 ID 为 54 的分类,代码如下:
function exclude_category( $query ) { if ( $query->is_archive() && $query->is_main_query() ) { $query->set( 'cat', '54' ); } } add_action( 'pre_get_posts', 'exclude_category' );
通过使用 pre_get_posts 钩子和自定义函数,你可以轻松地控制 WordPress 归档页面上显示的内容。 无论是排除特定分类,还是只显示特定分类,都可以通过修改查询参数来实现。 记住,理解 WordPress 的查询机制和钩子系统对于自定义 WordPress 网站至关重要。 希望本教程能够帮助你更好地管理你的 WordPress 网站。
php免费学习视频:立即学习
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!
已抢7569个
抢已抢97331个
抢已抢15252个
抢已抢53946个
抢已抢198259个
抢已抢88323个
抢