2

我一直在使用设置 API 来处理它。现在我觉得我对如何使用它有了一个不错的了解,我想优化一下我的操作方式。

我主要关心的是使用get_option每个回调来创建每个设置输入。我正计划缓存它们,所以我不需要调用get_option10 次以上。

我的问题是,在我进行缓存之前,wordpress 是否有自己的 get_option 每页加载缓存?

谢谢,马克斯

4

2 回答 2

2

不,WordPress 没有那种缓存。它甚至过于频繁地调用 get_option()。

编辑#1:wp_load_alloption()将从数据库加载每个选项到缓存,因此get_option()如果在缓存中找不到任何选项,则只会从数据库加载。

见下文(原始答案)为了减少 get_option() 的使用:

我更倾向于将它们全部包装到一个对象中以减少 get_option 的使用。我总是在我的主题上做这些第一件事:

global $mytheme;

$mytheme = new stdClass;
$mytheme->something = get_option( 'something' );

我为在我的主题上重复使用的每个设置执行此操作,因此 get_option 只会加载一次。

接下来我想要调用选项,我只使用:

function something() {
    global $mytheme;

    $something = $mytheme->something; 

    return $something;
}
于 2012-06-16T00:41:21.090 回答
0

您可以在 1 个选项中存储多个值。只需喂食update_optionadd_option数组。

在缓存说明中查看这些链接: http:
//www.catswhocode.com/blog/wordpress-transients-api-practical-examples
http://codex.wordpress.org/Transients_API

于 2012-06-15T21:37:28.197 回答