首页 > 解决方案 > url 匹配时静默传递查询

问题描述

当 url 满足特定条件时,我想将查询传递给 url 栏。

例如:

当我将网站语言更改为荷兰语时,我们最终得到https://www.example.com/nl

但是,当我们将站点语言更改为荷兰语时,我们需要将查询传递给 url 栏“?lang=nl”。我们有一个组件需要传递这个查询。

但是,我们不希望该查询在 url 栏中可见。它应该默默地过去。

是否有可能做到这一点?我正在使用 Wordpress。

我努力了

<?php

$urls = array(
         'http://www.example.com',
         'http://www.example.com/nl/'
        );

$query = 'lang=nl';

foreach($urls as &$url) {
   $parsedUrl = parse_url($url);
   if ($parsedUrl['path'] == null) {
      $url .= '/';
   }
   $separator = ($parsedUrl['query'] == NULL) ? '?' : '&';
   $url .= $separator . $query;
}

但这会在 url 栏中显示查询,并且为所有 $urls 传递查询。

标签: phpwordpress

解决方案


推荐阅读