WordPress主页设置在第一次加载时不起作用

时间:2017-04-19 作者:user1419810

我有一个MultiSite安装,它在用户注册时设置一个站点,将它们登录到新站点,然后将它们重定向到新站点的主页。这非常有效,但我有一个奇怪的主页设置问题:

当我尝试使用以下内容设置主页时:

/** Homepage Setup **/
if (!current_user_can( \'manage_options\' )) {
$homepage = get_page_by_title( \'home\' );

if ( $homepage )
{
    update_option( \'page_on_front\', $homepage->ID );
    update_option( \'show_on_front\', \'page\' );
}
}
}
在多站点站点的功能文件中,用户最初不会进入此页面,而是在第一次站点加载时显示默认的hello world帖子,而不是上面设置的模板化主页。奇怪的是,如果用户重新加载页面,主页就会被正确设置。当用户最初被重定向到站点时,该函数似乎没有加载,即在加载第一个页面后运行安装程序,但这对我来说似乎没有意义,因为该函数文件的其他部分正在运行。有人知道这里可能出了什么问题吗?

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

我想说的是,“hello world”帖子的解析是由于网站主页url最初是新网站的默认url。所以在主题功能之后。php文件已在第一次调用站点时第一次运行。您的设置已由代码更新,然后将来在子站点主页上的任何登录都将是您想要的主页。

尝试将代码绑定到新的网站创建挂钩。wpmu_new_blog

https://codex.wordpress.org/Plugin_API/Action_Reference/wpmu_new_blog

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请