我正试着用WordPress重写URL,但不起作用

时间:2017-11-13 作者:Prasanjeet Chakraborty

add_action( \'init\', \'wpse26388_rewrites_init\' );
function wpse26388_rewrites_init(){
    add_rewrite_rule(
        \'us-dot-numbers/([0-9]+)/?\',
        \'index.php/?page_id=642&dotNumber=80806\',
        \'top\' );
}

add_filter( \'query_vars\', \'wpse26388_query_vars\' );
function wpse26388_query_vars( $query_vars ){
    $query_vars[] = \'dotNumber\';
    return $query_vars;
}
我正在函数中使用此代码。php。我正在使用刷新功能刷新重写规则。

我想重定向www.domain。com/us dot number/80806指向www.domain。com/索引。php/?page\\u id=642(&U);点编号=80806

你能告诉我我做错了什么吗。另外,请告诉我“仅字母、数字和连字符”的正则表达式,

提前感谢!

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

你可以试试

add_action( \'init\', \'wpse26388_rewrites_init\', 10, 0);
function wpse26388_rewrites_init(){
    add_rewrite_rule(
        \'^us-dot-numbers/([A-Za-z0-9-]+)/?\',
        \'index.php?page_id=642&dotNumber=$matches[1]\',
        \'top\' );
}

add_filter( \'query_vars\', \'wpse26388_query_vars\' );
function wpse26388_query_vars( $query_vars ){
    $query_vars[] = \'dotNumber\';
    return $query_vars;
}
记住flush_rewrite_rules();

结束

相关推荐

Virtual Pages plugins

我很难让插件正常工作Virtual Pages (WordPress插件可简化虚拟页面的创建)我确实进行了编辑,根据查询创建了一个循环。add_action( \'gm_virtual_pages\', function( $controller ) { /* Creating virtuals pages for companies */ $args = array( \'post_type\' => array(\'companies\',), \'post_status\'