首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从Archive.php WordPress中排除类别

从Archive.php WordPress中排除类别的方法有多种。以下是其中一种常用的方法:

  1. 使用pre_get_posts钩子函数:在functions.php文件中添加以下代码:
代码语言:txt
复制
function exclude_category_archive( $query ) {
    if ( $query->is_category() && $query->is_main_query() ) {
        $query->set( 'cat', '-1,-2,-3' ); // 将1、2、3替换为要排除的类别ID
    }
}
add_action( 'pre_get_posts', 'exclude_category_archive' );

上述代码中,我们使用了pre_get_posts钩子函数来修改查询参数。首先,我们检查当前查询是否为类别页面(is_category()),并且是主查询(is_main_query())。然后,使用set()方法将要排除的类别ID传递给查询参数('cat')。在上述代码中,我们将1、2、3替换为要排除的类别ID。如果要排除多个类别,可以使用逗号分隔。

  1. 使用pre_get_posts钩子函数和get_query_var()函数:在functions.php文件中添加以下代码:
代码语言:txt
复制
function exclude_category_archive( $query ) {
    if ( $query->is_category() && $query->is_main_query() ) {
        $excluded_categories = array( 1, 2, 3 ); // 将1、2、3替换为要排除的类别ID
        $current_category = get_query_var( 'cat' );
        
        if ( ! empty( $current_category ) ) {
            $current_category_array = explode( ',', $current_category );
            $excluded_categories = array_merge( $excluded_categories, $current_category_array );
        }
        
        $query->set( 'category__not_in', $excluded_categories );
    }
}
add_action( 'pre_get_posts', 'exclude_category_archive' );

上述代码中,我们首先定义了要排除的类别ID数组($excluded_categories)。然后,使用get_query_var()函数获取当前类别页面的类别ID($current_category)。如果当前类别ID不为空,我们将其转换为数组,并与要排除的类别ID数组合并。最后,使用set()方法将排除的类别ID传递给查询参数('category__not_in')。

无论使用哪种方法,都需要将代码添加到主题的functions.php文件中。请确保在修改代码之前备份文件,以防止意外错误。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

WordPress 模板层次详细介绍

WordPress模板的定义非常方便,但是在定制模板之前,我们有必要知道WordPress的模板层次,了解WordPress如何加载模板文件的,这将有利于开发模板时合理利用资源及提高工作效率。...如果ID模板也没有那就是 page.php 模板了 如果连 page.php 模板都没有则加载 index.php 模板 分类页 首先被考虑的是 category-{slug}.php 别名模板(如分类别名是...以下说明假设自定义分类法是 people 这个名字: 分类法分类页首先被考虑的是 taxonomy-{taxonomy}-{term}.php 别名模板(如分类别名 teacher 对应的文件名就是 taxonomy-people-teacher.php...); return $templates; } add_filter( 'page_template', 'page_template_filter' ); 模板页面判断 一般情况下,在一个特定的模板我们能清楚知道应该怎么输出特定的样式和内容...,但在一些通用模板(如 header.php )我们想要知道用户当前访问的是哪个页面模板就需要借助WordPress内置的条件判断函数了,这些函数可以帮助我们判断当前是什么页面以方便加载不同的模板内容

65430

WordPress主题制作(一):主题文件结构

在上一篇文章,我们安装好了WordPress,准备好了制作主题需要的工具和主题测试的浏览器,接下来就要开始制作了,但在开始制作之前,我们还需要了解主题由哪些文件构成,其次还需要知道WordPress是怎样与主题文件连接的...archive.php index.php 作者档案 author-{nicename}.php——如果作者的昵称为lilei,WordPress将会查找author-lilei.php(WordPress...archive.php index.php 日期归档 date.php——基于日期的归档的默认模板 archive.php index.php 搜索结果 search.php——显示搜索结果的默认页面...application 或者其他). attachment.php——显示附件页面的默认模板 single-attachment.php——显示单个附件 single.php index.php 嵌入页面 WordPress...4.5开始,可以使用模板渲染嵌入到WordPress的文章。

1.9K30

WordPress 教程:在 WordPress 如何设置定时作业

其实 WordPress 本身也有类似于 Cron 的功能,让我们可以直接在 WordPress 定义和执行定时作业,WordPress 把这个功能定义为:WP-Cron,比如 WordPress 本身的文章预发布功能就是基于...WP-Cron 定义了一套完整的 API,让 WordPress 第三方开发者可以通过插件的去定义定时作业。...可视化管理定时作业列表 为了更加方便管理定时作业,建议大家首先安装 WPJAM Basic 插件,它的定时作业管理功能可以让我们可视化管理 WordPress 的定时作业,首先在后台展示系统现有的所有定时作业列表...定时作业的 hook 和回调函数 从上面可知,WordPress 的定时作业对应就是一个 hook,然后通过 hook 关联具体的回调函数,比如我们要定义一个每天都要执行的作业,我们把这个作业 hook...wpjam_daily_function_hook'); } 上面代码,首先使用函数 wp_next_scheduled 检测 wpjam_daily_function_hook 是否已经被加入到定时作业列表

2.2K20

如何WordPress 嵌入 iFrame

如何WordPress 嵌入 iFrame Iframe 是一种将网页嵌入到另一个页面的内容的方法。这是通过使用 HTML 元素、外部网站的 URL 以及窗口在您的网站上的外观参数来实现的。...如何WordPress 中使用 iframe:构建 iframe 的方法有多种,就像您希望在许多实例中使用其中一种一样。...我们将通过一种最常见的方式将 iframe 添加到您的 WordPress 网站。 手动将 iFrame 添加到 WordPress 页面: 将 iframe 添加到页面只需要一行代码。...语法: 嵌入 WordPress 页面的步骤: 第 1 步:转到您希望 iframe 出现的页面。...第 3 步:在要嵌入的页面的编辑器插入 iframe 标记。 注意:需要注意源 URL 的一些限制。首先,iframe 可能只显示来自与您使用相同超文本传输​​协议 (HTTP) 的网站的内容。

2.2K51

WordPress 主题教程 #1:介绍

从零开始制作 WordPress 主题的教程是一个循序渐进的教程,不会一次就教会你所有的东西,那样也是不大可能的,这个教程也不是 WordPress 主题制作的参考,而是一步一步教你从零开始教你如何制作...index.php 告诉主题中所有的元素如何布局,style.css 则告诉主题中所有的元素该如何展示,以及它们的样式。...这里列出了 6 个文件而不是完整的 13 个,因为这 6 个是相对更重要一些,不过在接下来的教程,余下的文件也都会讲到。...因为 WordPress 利用这个层次结构去寻找相应的模板文件显示页面,并且在相应的文件丢失之后如何处理。...比如 archive.php 模板文件(用来显示存档页面)丢失了,那么 WordPress 将会使用 index.php 来控制存档页面如何显示。

50620

如何清除 WordPress 的缓存?

如果您是 WordPress 新手,您可能需要知道如何清除缓存。如果您不熟悉该术语,清除缓存只是一种网站临时存储删除材料和数据的方法。如果您进行了任何修改,您将知道您获得的是最新的材料或数据。...在本文中,我们将介绍如何清除 WordPress 缓存以及浏览器和插件上的缓存。让我们开始吧。当您对 WordPress 网站进行更改并希望看到它们立即生效时,清除 WordPress 缓存很有用。...使用插件清除 WordPress 的缓存 第 1 种:使用 WP Rocket WordPress 插件 WP Rocket 是市场上最棒的 WordPress 缓存插件。...然而,他们可能会保存在您计算机上的缓存版本刷新页面,而不是获取新副本。...本指南将教您如何使用一些最常见的缓存插件清除 WordPress 的缓存。如果清除 WordPress 服务器缓存没有帮助,请尝试清除浏览器的缓存。

3.8K31

如何Serilog请求日志记录中排除健康检查终结点

请求日志记录中排除健康检查端点(本文) 作者:依乐祝 译文地址:https://www.cnblogs.com/yilezhu/p/12253361.html 原文地址:https://andrewlock.net...我描述了如何配置Serilog的RequestLogging中间件以向Serilog的请求日志摘要添加附加属性,例如请求主机名或选定的端点名称。...我还展示了如何使用过滤器将MVC或RazorPage特定的属性添加到摘要日志。 在本文中,我将展示如何过滤掉某个特定请求的摘要日志消息。...定制用于Serilog请求日志的日志级别 在上一篇文章,我展示了如何在Serilog请求日志包括所选终结点。...在下一节,我将展示如何在不影响其他请求的情况下识别这些请求。 将自定义日志级别用于健康检查终结点请求 我们需要的是能够在写入摘要日志时识别出健康检查的请求的能力。

1.3K10

如何WordPress 创建联系表格?

我们可以通过使用网站上的 WordPress 插件添加联系表格来做到这一点。因此,这将为你的访问者提供一种与你联系的方式,当他们需要帮助或有什么要分享的时候。 让我们看看如何创建联系表格。...通过 3 个步骤创建联系表: 第 1 步:在 WordPress 安装一个有助于创建表单的插件。因此,要安装插件,请转到你的 WordPress 仪表板。 单击仪表板的插件选项。...以下给定选项中选择联系我们选项:空白表格、联系我们、报价请求、活动注册。 当你单击它时,你的表单将被创建。 将创建一个简单的联系表单,其中包含名称、电子邮件、消息和提交按钮等字段。...这就是你在 WordPress 创建联系表单的方法。...⭐️ 好书推荐 《Unity手机游戏开发:搭建到发布上线全流程实战》 【内容简介】 本书将以一款开放世界类游戏的实践过程为主线,为读者呈现从零开始上线一款游戏的实践路线、游戏引擎Unity的开发模式

2.8K21
领券