¿Cómo obtener parámetros URL en un shortcode?
No puedo encontrar una solución para esto ...
URL: www.foo.com/some_page/?name=John
Contenido de la página:
¡Hola [Name]!
WordPress sigue redirigiendo a www.foo.com/some_page/
He intentado todo ...
Necesito algo como lo siguiente en functions.php
function name_shortcode() {
return $_GET['name'];
}
add_shortcode( 'Name', 'name_shortcode' );
Y en otra página: Haz clic aquí www.foo.com/some-page/?name=John
Si entiendo correctamente tu pregunta, quieres poder obtener el parámetro de la URL, agregarlo al shortcode para que puedas añadir el parámetro al contenido.
Prueba si esto funciona:
add_shortcode('nombre', 'obtener_nombre');
function obtener_nombre() {
return $_GET['nombre'];
}
En el editor de WordPress tendrías algo como:
Hola [nombre], 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.

Esto no funciona porque Wordpress redirige la URL: www.foo.com/page/?names=john a www.foo.com/page/ y el parámetro names está vacío.

Quizás tienes algún plugin que está haciendo la redirección o el tema fue creado de esa manera. Probé en un par de sitios que construí y no redirigió. Wordpress usualmente redirige si intentas hacerlo en la página de inicio/raíz porque por defecto se usa para los resultados de búsqueda.

Desarrollamos un plugin que hará esto por ti https://wordpress.org/plugins/display-url-params/ - Utiliza un shortcode simple para obtener parámetros de URL desde la cadena de consulta (Query String) y mostrarlos como contenido dinámico en páginas y entradas.
