我一直在创建新的wordpress博客的问题,我通过主题激活脚本设置永久链接。但是,即使在我检查WP中的永久链接设置时它们看起来是正确的,我的新页面也会丢失404错误。
我发现的唯一修复是我必须回到永久链接选项并单击“保存更改”,即使根据显示,我没有做任何更改需要保存...
我将永久链接设置为/%postname%/
以下是我的表现方式。
if(get_option('permalink_structure')==""){update_option('permalink_structure', '/%postname%/');}
当我的主题被激活时,该脚本会运行。
任何想法为什么它只能部分完成工作?
答案 0 :(得分:6)
在Wordpress设置面板中设置固定链接结构时,它会调用set_permalink_structure
中的wp_includes/rewrite.php
功能。除了设置permalink_structure
选项之外,此功能还会重新初始化WordPress重写组件并运行permalink_structure_changed
操作。
你应该调用这个函数而不是直接设置选项,这样的东西应该可以工作:
if (get_option('permalink_structure') == '') {
global $wp_rewrite;
$wp_rewrite->set_permalink_structure('/%postname%/');
}