【发布时间】:2015-09-18 09:16:00
【问题描述】:
如果页面正在使用某个页面主题,则使用 $wp_rewrite 更改永久链接。
导致首页出现 404 错误,并且在管理页面中运行良好。
//Change permalink to subject
function change_permalink_themebasis( $post ) {
$template = get_post_meta( $post->ID, '_wp_page_template' ,true );
if ( 'page-branches.php' == $template) {
global $wp_rewrite;
$wp_rewrite->page_structure = $wp_rewrite->root . 'branches/%pagename%/';
} elseif ( 'page-modules.php' == $template) {
global $wp_rewrite;
$wp_rewrite->page_structure = $wp_rewrite->root . 'modules/%pagename%/';
} else{
global $wp_rewrite;
$wp_rewrite->page_structure = $wp_rewrite->root . '%pagename%/';
}
}
add_action( 'add_meta_boxes_page', 'change_permalink_themebasis' );
如何解决这个问题?我认为问题在于 add_action 类型“add_meta_boxes_page”,但我找不到合适的。
编辑: Oke 发现它与以下代码有关:
$wp_rewrite->page_structure = $wp_rewrite->root . 'branches/%pagename%/';
【问题讨论】:
标签: php wordpress templates permalinks slug