Лучший способ передать аргументы на другую страницу в WordPress

wordpress.stackexchange https://wordpress.stackexchange.com/questions/5775

  •  16-10-2019
  •  | 
  •  

Вопрос

Как лучше всего передать аргументы на другую страницу в WordPress. Я сделал это так:

<a href="get_permalinka(id_of_page).'/&i=2&j=3&k=4'">Link/a>

Я получаю эти аргументы с $ _get ['i'], $ _ get ['j'], $ _ get ['k'], проблема: это работает только с постоянными ссылками по умолчанию, но когда я меняю на какой -то другой тип постоянной ссылки, Это больше не работает. Примечание - я передаю эти аргументы из домашней страницы на другую страницу (страница шаблона).

Спасибо за ваше время.

Это было полезно?

Решение

Использовать add_query_arg () сделать это.

Вот полезная функция, если вам нужно получить текущий URL -адрес страницы (когда get_permalink недоступен, как в архивах):

function get_current_page_url() {
  $request = esc_url($_SERVER["REQUEST_URI"]);

  $pageURL = (is_ssl() ? 'https' : 'http').'://';
  if ($_SERVER["SERVER_PORT"] != "80") $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$request; else $pageURL .= $_SERVER["SERVER_NAME"].$request;

  if (false === strpos(get_option('home'), '://www.')) $pageURL = str_replace('://www.', '://', $pageURL);
  if (false !== strpos(get_option('home'), '://www.') && false === strpos($pageURL, '://www.')) $pageURL = str_replace('://', '://www.', $pageURL);

  return $pageURL;
}

Другие советы

    add_filter('query_vars', 'p_query');

    function p_query($qvars) {
        $qvars[] = 'i';
        return $qvars;
    }

     <a href="<?= add_query_arg('i', '2', get_permalink(some_page_id)); ?>">Link</a>

и на странице я звоню

$qvar = get_query_var('i');
echo $qvar;

$ Qvar пуст!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с wordpress.stackexchange
scroll top