首页 > 解决方案 > 如何使用重写规则变量覆盖 url 参数?

问题描述

设置规则:

add_action( 'init',  function() {
    add_rewrite_rule( '^myparamname/?$', 'index.php?myparamname=hello', 'top' );
} );

将查询参数列入白名单:

add_filter( 'query_vars', function( $query_vars ) {
    $query_vars[] = 'myparamname';
    return $query_vars;
} );

获取查询变量:

localhost/myparamname

get_query_var('myparamname'); // hello

localhost/myparamname?myparamname=hi或者 localhost/myparamname/?myparamname=hi

get_query_var('myparamname'); // hi

如您所见,在第二个示例中显示“hi”消息而不是“hello” 。在这里,期望的情况一般是"hello"

标签: phpwordpressparametersurl-rewriting

解决方案


推荐阅读