2010-03-08 28 views
0

我一直在创建新的WordPress博客,我通过主题激活脚本设置永久链接的问题。然而,即使他们看起来是正确的,当我检查永久链接中的永久链接设置,我的新页面抛出404错误。Wordpress强制更新的永久链接设置

我发现的唯一修复方法是,我必须回到固定链接选项并单击“保存更改”,尽管根据显示屏,我没有更改需要保存...

我在设置固定链接到/%postname%/

以下是我如何做到这一点。

if(get_option('permalink_structure')==""){update_option('permalink_structure', '/%postname%/');} 

当我的主题被激活时,该脚本就会运行。

任何想法,为什么它只是部分工作?

+0

你能告诉我们的Web服务器? – 2010-03-08 04:03:33

回答

5

当您在Wordpress设置面板中设置永久链接结构时,它会调用wp_includes/rewrite.php中的set_permalink_structure函数。除了设置permalink_structure选项外,此功能还会重新初始化WordPress重写组件并运行permalink_structure_changed操作。

你应该调用这个函数,而不是直接设置选项,这样的事情应该工作:

if (get_option('permalink_structure') == '') { 
    global $wp_rewrite; 
    $wp_rewrite->set_permalink_structure('/%postname%/'); 
}