Transients API and multisite

时间:2011-06-29 作者:DavidJ

我们正在使用Atlas HTML站点地图插件,该插件使用transients API缓存站点地图,调用如下:

set_transient( \'dmac_html_sitemap\', $output, 60*60*24*7 );
现在,我们还有一个多站点设置,我想知道瞬态存储在哪里,WP multisite是否将它们分开。它将选项分开,因为每个站点(博客)都有自己的DB表前缀(例如wp\\U 29\\U选项)。

我在某个地方读到,瞬态可以用memcached存储,所以我猜后端存储是可插入的。

这个问题的原因是我们有复制站点的自定义代码。如果瞬态在DB中的某个地方,它将被复制,因此我想删除新复制站点的缓存(复制过程的一部分还生成特定于站点的页面)。

如果我打电话:

delete_transient( \'dmac_html_sitemap\' ); 
从我们插件的网络页面管理中,该插件将删除哪个站点的瞬态?全部的没有一个只有主站点?

编辑:正如Rarst在下面指出的那样,当不使用外部持久缓存插件时,瞬态只是作为选项存储(前缀为transient)。因此,在这种情况下,它们将是特定于站点的(因为每个站点/博客都有一个选项表)。因此,现在的问题是,wp\\u cache\\u set()和friends是否通过使用blog\\u id或缓存键中的某些内容来保持缓存项按站点分隔?(例如,如果存储在memcached或APC中)

1 个回复
最合适的回答,由SO网友:Rarst 整理而成

违约Transient API 行为是使用Options API 用于存储和so行为与选项相同。

然而,如果有外部对象缓存(由插件或其他什么声明),那么它们将使用object cache functions 相反

所以,基本上它将在当前站点的范围内工作,除非有插件使其工作。

结束

相关推荐

WordPress MultiSite。可以用域代替子域吗?

我是多站点新手。这是一个简单的问题。我知道WordPress multisite可以为子域设置。是否可以将域与子域一起使用?我在谷歌上搜索过,但并没有得到很好的结果。也许我用错了关键词。so i can use a single wordpress installation for:领域com公司第1款。领域com公司第2款。领域com公司实例com公司示例2。com公司第1款。示例2 COM希望你得到它。提前谢谢!