我现在在我们的一个网站上遇到了一个奇怪的问题。对于临时站点设置,我们从子域多站点安装切换到子文件夹安装。因此,所有URL都来自此:
site.website.com
staging.otherwebsite.com/site
我尝试过更改配置文件以支持子文件夹多站点:
define(\'WP_ALLOW_MULTISITE\', true);
define( \'MULTISITE\', true );
define( \'SUBDOMAIN_INSTALL\', false );
$base = \'/\';
define( \'DOMAIN_CURRENT_SITE\', \'staging.otherwebsite.com\' );
define( \'PATH_CURRENT_SITE\', \'/\' );
define( \'SITE_ID_CURRENT_SITE\', 1 );
define( \'BLOG_ID_CURRENT_SITE\', 1 );
我还必须更改数据库表。我进入并更改了中每个站点的路径列wp_blogs
表,使其与正确的结构相匹配。我想我也为wp_site
还有桌子。我的htaccess文件如下所示:
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\\.php)$ $2 [L]
RewriteRule . index.php [L]
wordpress在菜单中显示所有站点,好像它们都有相同的标题和链接(基本上显示主站点10次,与我的站点数量相同),这可能是什么原因造成的?在将子域安装切换到子文件夹安装时,是否遗漏了任何步骤?如果有任何其他信息,我可以提供让我知道,我会添加它。谢谢
UPDATE
我发布了一个答案,但它不起作用。。。充分地它暂时解决了这个问题。在调用之前调用此函数时get_blog_details
作用现在是奇怪的部分,当我添加这个函数时wp_cache_flush()
在循环遍历每个博客id之前get_blog_details()
函数返回相同的日志详细信息。
当我在获取日志详细信息之前在循环中添加缓存刷新时,我会为每个日志获取适当的日志详细信息。当我删除flush函数时,问题又出现了。
我一直在研究这一点,以了解原因。关于这件事的任何细节都会帮助我度过难关。