WordPress重写由于某些原因不起作用

时间:2016-10-23 作者:Brad

我正在学习如何使用WordPress rewrites. 首先,我只是尝试重定向任何请求“validate_data.php“收件人”validate-data“。以下是我添加到functions.php文件中的内容:

function custom_rewrite_basic() {
  add_rewrite_rule( \'validate_data.php\', \'validate-data\', \'top\' );
}
add_action( \'init\', \'custom_rewrite_basic\' );
我知道我可以在中执行此操作。htaccess文件,但我在这里测试它,因为我有一个更高级的案例,所以这只是一个开始。当我访问“validate\\u data.php”时,它会导致404错误。我希望有人能告诉我我做错了什么?

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

我是WordPress重写的新手,所以在读了一些StackExchange之后,我就明白了。所有重写都应传递到索引。php,然后我可以调用要重定向到的页面,如下所示:

function custom_rewrite_basic() {
    add_rewrite_rule( \'validate_data.php\', \'index.php?pagename=validate-data\', \'top\' );
}
add_action( \'init\', \'custom_rewrite_basic\' );
此外,我想将一些POST数据从旧页面传递到新页面,所以我这样做:

function custom_rewrite_basic() {
    add_rewrite_rule( \'^validate_data.php(.+)/?$\', \'index.php?pagename=validate-data\', \'top\' );
}
add_action( \'init\', \'custom_rewrite_basic\' );
希望有一天能帮助像我这样的新手:)

相关推荐