Плагин Wordpress Проблема с $ _GET не возвращает значение - PullRequest
3 голосов
/ 03 мая 2019

Я пишу плагин для WordPress, первый шаг этого плагина заключается в том, чтобы установить cookie на значение параметра URL ?r=, если он существует.

public function init_query_params() {
        if(!isset($_GET['r'])) {
            return;
        }

        $cookie_name = 'waitlist_referrer_id';
        $cookie_value = $_GET['r'];
        setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/");
    }

Проблема в том, что $_GET пусто, даже если параметр существует. Параметр виден в $_SERVER['REQUEST_URI'], но не в $_SERVER['QUERY_STRING'].

Эта проблема сохраняется только при постановке / продвижении для этого конкретного клиента, она работает в моей локальной среде и в среде других клиентов.

В настоящее время, и я просто анализирую его с REQUEST_URI, но я бы хотел помочь найти реальную проблему.

1 Ответ

0 голосов
/ 04 мая 2019

Добавьте приведенный ниже код в ваш плагин или файл функции.

function add_query_vars_cb($aVars) {
$aVars[] = "r";
return $aVars;
}
add_filter('query_vars', 'add_query_vars_cb');

Затем на странице, где вы хотите получить значение переменной строки запроса, вы должны напечатать этот объект

$objj = get_queried_object();
print_r($objj);

Я думаю, вы получите значение.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...