【问题标题】:Wordpress add rules on Nginx doesnt worksWordPress 在 Nginx 上添加规则不起作用
【发布时间】:2018-05-14 02:47:27
【问题描述】:

我想在 wordpress(nginx 服务器)上重写 url 并在 URL (GET) 中传递参数。

在functions.php中我添加了这个:

add_action('init', 'add_my_rewrite'); 
function add_my_rewrite() 
{   
global $wp_rewrite;   
add_rewrite_tag('%jeans%','([^&]+)');   
$wp_rewrite->add_rule('catalogue/([^/]+)/','index.php?pagename=catalogue&jeans=$matches[1]','top');

$wp_rewrite->flush_rules(); 
}

然后在我的 php 文件 id 这个:

global $wp_query;
$jeans = $wp_query->query_vars['jeans'];
echo $jeans;

但它不起作用

【问题讨论】:

    标签: php wordpress nginx url-rewriting


    【解决方案1】:

    WordPress 不会自动将查询字符串变量导入 $wp_query。您必须使用代码修改 WP 查询,这取决于您希望它执行的操作。

    我们很清楚,$wp_query 是 数据库 查询。 URL 中的“查询”字符串变量可以通过 $_GET 访问。

        echo $_GET['jeans'];
    

    (但你应该先检查是否是isset()。)

        echo isset( $_GET['jeans'] ) ? $_GET['jeans'] : 'Not set';
    

    【讨论】:

      猜你喜欢
      • 2019-12-13
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      • 1970-01-01
      • 2013-02-24
      • 1970-01-01
      • 1970-01-01
      • 2017-02-05
      相关资源
      最近更新 更多