WordPress 在 5.5 版本的时候,就引入了wp_cache_get_multiple()函数,实现一次缓存调用就可以批量获取一组缓存。
Memcached 也支持一次要求设置多个数据,以及一次要求也可以删除多个缓存数据,以是 WordPress 6.0 版本完善了缓存的批量操作方法,通过实现了下面这三个函数支持完全的缓存的批量的 CRUD 操作,这样就可以一次缓存调用就能创建、编辑和删除多个缓存工具:
下面分别大略先容一下这三个函数:

wp_cache_add_multiple( $data, $group = '', $expire = 0 )
$data: 要添加到缓存中的键值对数组。$group: 可选, 缓存的组名,默认为空字符串$expire: 可选,多少秒后过期,单位为秒,默认为0,即永不过期。wp_cache_add_multiple( ['foo1' => 'value1', 'foo2' => 'value2'], 'group1' );
wp_cache_set_multiple( $data, $group = '', $expire = 0 )
$data: 要设置到缓存中的键值对数组。$group: 可选, 缓存的组名,默认为空字符串$expire: 可选,多少秒后过期,单位为秒,默认为0,即永不过期。
wp_cache_set_multiple( ['foo1' => 'value1', 'foo2' => 'value2'], 'group1' );
wp_cache_delete_multiple( $keys, $group = '' )
$keys: 缓存中要被删除的键名数组。$group: 可选, 缓存的组名,默认为空字符串
wp_cache_delete_multiple( ['foo1', 'foo2'], 'group1' );
object-cache.php 实现
这三个函数是须要插件开拓者在 object-cache.php 中去实现,没有的话,WordPress 6.0 会兼容处理,便是循环调用 wp_cache_add()、wp_cache_set() 和 wp_cache_delete() 中来处理,但是这样就完备无法表示 Memcached 的高效率。
新版的 WPJAM Basic 中内置的 object-cache.php 已经实现 wp_cache_set_multiple() 和 wp_cache_delete_multiple() 函数,由于Memcached 没有批量添加的接口, 以是 wp_cache_add_multi() 就没有实现,让 WordPress 利用默认的循环调用 wp_cache_add() 实现即可。
下载 WPJAM Basic 之后,须要重新将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下,这样才可以实现一次缓存调用就能创建、编辑和删除多个缓存工具,提高站点的效率。