Page_link change

时间:2014-12-11 作者:MacLover

我正在尝试更改默认页面的帖子类型permalink,我想添加一个\'。php’结束,例如:home_url() . post_name . \'.php\'

我无法使用WordPress permalinks页面,因为我已经这样使用它了:/%category%/%postname%.php 这不会影响默认的页面帖子类型。

So I did it like follows:

function wp_pages_permalink( $permalink, $post ) {
    if ( empty( $post ) ) return $permalink;

    return home_url( $post->post_name . \'.php\'  );
}

add_filter( \'page_link\', \'wp_pages_permalink\', 10, 2 );
然而,当我尝试访问该页面时,我得到了404,and I have already flushed the rewrite rules by visiting the permalinks page.

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

正如所怀疑的那样,这需要一个重写规则。。我不知道为什么post\\u链接过滤器不需要添加重写规则。。

function ba_rewrite() {
    add_rewrite_rule(\'^([^/]*)?.php\', \'index.php?pagename=$matches[1]\', \'top\');
}

add_action( \'init\', \'ba_rewrite\' );

结束

相关推荐

Custom permalinks structure

我希望有这样的结构:www.mysite.com/2013 (必须显示2013年的所有职位)www.mysite.com/my-category/2013 (必须显示2013年和“我的类别”类别的所有帖子)www.mysite.com/my-category/my-tag/ (必须显示所有类别为“我的类别”和标记为“我的标记”的帖子)www.mysite.com/my-category/ (必须显示“我的类别”类别的所有帖子)www.mysite.com/my-