Как получить параметр URL в шорткоде?
Не могу найти решение для этого ...
URL: www.foo.com/some_page/?name=John
Содержимое страницы:
Привет [Name]!
WordPress всё равно перенаправляет обратно на www.foo.com/some_page/
Я пробовал всё ...
Мне нужно что-то вроде следующего в functions.php
function name_shortcode() {
return $_GET['name'];
}
add_shortcode( 'Name', 'name_shortcode' );
И на другой странице: Нажмите здесь www.foo.com/some-page/?name=John
Если я правильно понял ваш вопрос, вы хотите иметь возможность получать параметр из URL, добавлять его в шорткод, чтобы передать этот параметр в контент.
Попробуйте этот вариант:
add_shortcode('name', 'get_name');
function get_name() {
return $_GET['name'];
}
В редакторе WordPress у вас может быть что-то вроде:
Привет [name], Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.

Это не работает, потому что WordPress перенаправляет URL: www.foo.com/page/?names=john на www.foo.com/page/, и параметр names пуст.

Возможно, у вас есть плагин, который перенаправляет, или тема была создана таким образом. Я протестировал на нескольких сайтах, которые создал, и перенаправления не было. Обычно WordPress перенаправляет, если вы пытаетесь сделать это на главной странице/домашней/корневой, потому что она по умолчанию используется для результатов поиска.

Мы разработали плагин, который сделает это за вас https://wordpress.org/plugins/display-url-params/ - Он использует простой шорткод для получения параметров URL из строки запроса и отображения их в качестве динамического контента на страницах и записях.
