WordPress修改自定义文章类型的固定链接为 post_type/post_id.html

本例的自定义文章类型名称为book

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/**
 * 注册rewrite rule
 */

add_action( 'init', 'wpapp_custom_book_rewrites_init' );
function wpapp_custom_book_rewrites_init(){
    add_rewrite_rule(
      'book/([0-9]+)?.html$',
      'index.php?post_type=book&p=$matches[1]',
      'top'
    );
}

/**
 * 修改链接格式
 */

add_filter('post_type_link', 'sola_custom_book_link', 1, 3);
function sola_custom_book_link( $link, $post ){
    if ( $post->post_type == 'book' ){
        return home_url( 'book/' . $post->ID .'.html' );
    } else {
        return $link;
    }
}

代码需要加到主题的functions.php 里面

此文章的评论已关闭.