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

WordPress 6.1 将提高 WP_Query 查询性能,真正实现站点 0 SQL

WP_Query 实现数据库查询缓存 WordPress 6.1 改进了 WP_Query 类中数据库查询的执行方式,实现 SQL 查询缓存,这意味着如果多次运行同一条 SQL 查询,查询结果将从缓存中加载...对于使用持久对象缓存服务(比如 Memcached)的站点来说,在缓存失效之前,相同的数据库查询就不会再次运行,从而显著降低站点的数据库查询次数。...对于未使用内存缓存的站点来说,同个页面中相同的 WP_Query 也也不会重复执行,所以站点性能也会得到一定提升,但是不会那么显著。...WP_Query 初始化所有作者数据 在 6.1 之前,主循环会同时加载作者信息,所以具有多个作者的站点需要执行多次数据库查询来分别获取作者的信息,现在 WordPress 6.1 引入了一个新函数 update_post_author_caches...初始化菜单中的所有链接对象 WordPress 6.1 还新增了函数 update_menu_item_cache,它支持一个 post 的对象数组参数,然后就会初始化菜单中引用到的文章或者分类的数据缓存

69620
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    WordPress自定义查询:WP_Query的使用

    wordpress默认会根据网址调用数据,不能满足我们所有建站要求,而WP_Query可以用于查询任何你想要的内容,相当于自定义数据调用。 wordpress的主循环 两段代码是等效的,为了保持代码的简洁性,WordPress 隐藏了全局的主循环变量 $wp_query。 WP_Query最基础用法 <?...php /** * WordPress 查询综合参考 * * 官方文档: http://codex.wordpress.org/Class_Reference/WP_Query * 源代码: http:...'relation' => 'AND', //(字符串) - 可用的值有 'AND' 或 'OR' 和 SQL 的 JOIN 作用是相同的 array( 'taxonomy' => 'color...' => 10, //(整数) - 每页显示的文章数量 (2.1和以后的版本可用), 使用'posts_per_page'=-1 显示所有文章,如果查询处于订阅源中,WordPress用 'posts_per_rss

    1.4K20

    Power Pivot中如何计算具有相同日期数据的移动平均?

    (四) 如何计算具有相同日期数据的移动平均? 数据表——表1 ? 效果 ? 1. 解题思路 具有相同日期数据,实际上也就是把数据进行汇总求和后再进行平均值的计算。其余和之前的写法一致。...建立数据表和日期表之间的关系 2. 函数思路 A....() , //满足5日均线计算条件 AverageX(Filter(All('日历'), [排名]>=pm-5 && [排名]的符合要求的日期区间表...满足计算的条件增加1项,即金额不为空。 是通过日历表(唯一值)进行汇总计算,而不是原表。 计算的平均值,是经过汇总后的金额,而不单纯是原来表中的列金额。...如果觉得有帮助,那麻烦您进行转发,让更多的人能够提高自身的工作效率。

    3.1K10

    使用 WP_Query 而不是 query_posts 自定义 WordPress 查询

    query_posts 存在的问题 使用 query_posts 直接修改 WordPress 默认的主循环很方便,只要把对应的参数传递给函数即可,主循环的查询即可按照新的参数去查询,但是这样会造成以下的问题...: 干扰使用到 WordPress 主循环的插件。...使用 WP_Query 自定义查询 所以最好的方法是使用 WP_Query 来创建自定义 WordPress 查询,这样创建的查询和 WordPress 主循环隔离开,并不会影响主循环的行为。...> 上面我们用了 WP_Query 的两个方法,分别是 have_posts 和 the_post,这两个方法的具体意思,可以参考这篇文章全局变量和 WordPress 主循环里面的介绍。...> 简单总结 使用 WP_Query 创建自定义 WordPress 查询是不会干扰默认的 WordPress 主循环,使用它我们完全可以在一个页面同时运行两个或者以上完全独立的 WordPress

    36020

    避免重复内容

    重复内容是指有两个或者更多的页面有相同或者基本相同的内容。我们必须避免重复内容以免被搜索引擎惩罚。...但是有时候我们需要在页面上显示2个(获这个更多)日志列表,通常我们是通过多个循环(一个标准的循环,一个来自特定的分类的循环)来实现。这样通常是你就能不仅想推荐最新写的日志,同时来自某个特定的分类。...php $my_query = new WP_Query('category_name=featured&showposts=1'); while ($my_query->have_posts()) :...Reducing Duplicate Content on WordPress Blogs Duplicate Content Cure Plugin for Wordpress, 这是一个非常有效的...SEO 插件,它能阻止搜索引擎索引含有重复内容的 WordPress 博客的页面,如存档,分类页面。

    68820

    WordPress 文章查询教程6:如何使用排序相关的参数

    在 WordPress 中,使用 WP_Query 进行文章查询是最常见的操作,学习好这方面的操作, WordPress 开发基本就学会了一半。...「WordPress果酱」将通过一系列教程讲解如何使用 WP_Query 进行 WordPress 文章查询。...我写这一系列文章的目的也是为了方便自己使用这些参数的时候方便查询,所以如果你也是经常进行 WordPress 二次开发的话,建议收藏本文。...可以传递一个或多个选项: none – 无顺序 ID – 按文章 ID 排序,注意 ID 是大写的。 author – 按文章作者排序。...常用于页面(排序字段在页面编辑页面的「页面属性」框中),也可用于具有不同 menu_order 值的任何文章类型(默认值都是 0)。

    1.6K30

    WordPress 文章查询教程9:如何使用自定义字段(post meta)参数

    在 WordPress 中,使用 WP_Query 进行文章查询是最常见的操作,学习好这方面的操作, WordPress 开发基本就学会了一半。...「WordPress果酱」将通过一系列教程讲解如何使用 WP_Query 进行 WordPress 文章查询。...我写这一系列文章的目的也是为了方便自己使用这些参数的时候方便查询,所以如果你也是经常进行 WordPress 二次开发的话,建议收藏本文。...relation (string) – 用于定义多个内嵌 meta_query 数组之间的关系,它的值是:'AND', 'OR'。只有一个内嵌 meta_query 数组参数的时候,不要使用该参数。...meta_query 还包含一个或者多个具有以下键值的数组: key (string) – 自定义字段的 key。 value (string|array) – 自定义字段的 value。

    1.2K10

    WordPress 文章查询教程1:如何使用分类,标签或其他分类模式参数

    在 WordPress 中,使用 WP_Query 进行文章查询是最常见的操作,学习好这方面的操作, WordPress 开发基本就学会了一半。...「WordPress果酱」将通过一系列教程讲解如何使用 WP_Query 进行 WordPress 文章查询。...第一讲,把 WP_Query 最常用的分类,标签和分类模的所有相关的参数讲解一下,例子也是来自官方文档,学完之后,你可以在 WordPress 进行非常复杂的多重筛选。...特别注意的是:tax_query 参数是分类模式参数数组的列表,首先我们先了解一下它的参数数组的子参数: relation (string) – 多个内部分类参数数组之间的逻辑关系。...比如:获取在 quotes 分类中或者同时有 quote 文章格式和在 wisdom 分类中的文章: $query = new WP_Query(array( 'post_type' => 'post

    1.5K51

    wodpress调用当前文章同分类下相同tag的10篇文章

    要在WordPress中随机调用当前文章同分类下的相同标签的10篇文章,你可以使用以下代码。这段代码将会获取当前文章的分类和标签,然后查询同分类下具有相同标签的10篇随机文章。 'rand', // 随机排序 ); // 查询文章 $related_posts = new WP_Query...>这段代码首先获取当前文章的ID,然后获取其分类和标签。接着,它构建一个查询参数数组,其中包含了限制文章数量、指定分类、指定标签ID、排除当前文章以及随机排序的设置。...使用`WP_Query`执行这个查询,最后循环输出查询到的文章标题和链接。请注意,这段代码假设当前文章至少有一个分类和一个标签。如果当前文章没有分类或标签,代码将输出相应的信息。...此外,代码中使用了`shuffle`函数来随机化标签数组,并使用数组的第一个元素作为查询的基础,这是因为我们只需要一个标签来找到相关文章。

    6000

    为了性能极限考虑,WordPress 6.2 弃用 get_page_by_title() 函数

    WordPress 6.1 的时候通过提高 WP_Query 查询性能真正实现站点 0 SQL,现在 WordPress 6.2 将性能要求做到更加极致,将弃用 get_page_by_title()...两点原因: get_page_by_title() 函数是直接使用数据库查询获取页面的,可能由于数据库版本或者引擎不同,而造成返回的数据会有可能不同,切换到使用 WP_Query 获取数据则可确保得到相同的结果...WordPress 6.1 的时候提高了 WP_Query 性能,实现了缓存,所以开发者直接使用 WP_Query 去根据标题获取页面则效率更高。该函数就没有必要了。...不过要特别注意的是, WP_Query 是要在插件加载完成之后才能运行,即在 plugins_loaded 的 action 之后。...$page_got_by_title = $query->post; } else { $page_got_by_title = null; } 也可以通过 get_posts() 函数来实现相同的功能

    33030

    优化WordPress性能的高级指南

    获取帖子(Fetching Posts) WordPress提供从数据库中获取任何类型的帖子(post)的方法。...这可能会导致不一致,特别是如果我们在代码中使用查询相关的过滤器,因为你在页面中不期望的帖子可能会被该函数返回。 使用WP_Query类 在我看来,这是从数据库中检索帖子的最佳方式。...基本上,我从数据库引擎中脱掉了一些工作,而是将其转移到PHP引擎,功能和在数据中处理的相同但在内存中,因此更快。 如何做的? 首选,我在查询中删除了post__not_in参数。...然后,当我循环这些帖子时只处理那些不在$posts_to_exclude数组里的。...: NULL; 正如你所看到的,这种方法很简单,但并不是最佳的。它将执行一个数据库查询,试图找到一个具有特定元键(meta key)的帖子。

    7.1K20
    领券