Tengo comentarios habilitados en diferentes tipos de páginas en Wordpress (archivo, etiqueta, búsqueda, página principal), y después de que un usuario publique un comentario me gustaría que sean redirigidos a su página de referencia, no a la página de publicación única . ¿Algunas ideas?En WordPress, ¿cómo redirigir después de un comentario a la página de referencia?
Respuesta
poner esto en su functions.php:
add_filter('comment_post_redirect', 'redirect_after_comment');
function redirect_after_comment($location)
{
return $_SERVER["HTTP_REFERER"];
}
$ref = $_SERVER["HTTP_REFERER"];
header("Location: $ref");
Gracias, pero ¿Dónde pongo esto? Lo siento, soy nuevo en php y Wordpress en general. Gracias por tu ayuda. –
WP nunca usado, lo siento. Busque la función o el archivo donde ocurre la inserción de comentarios, luego de que se inserta un comentario en la base de datos, cuando ocurre la redirección, generalmente se usa la función de encabezado, o tal vez WP tiene su función de redirección interna; de todos modos, puede enviar el encabezado y guión de salida. –
Utilice WordPress Plugin API. Es la forma correcta de ampliar o personalizar la funcionalidad en WordPress. Una vez que haya leído un poco acerca de la API, consulte la Referencia de acción (Publicaría el enlace pero StackOverflow no me dejará).
Usted necesitará por lo menos dos ganchos de acción para completar su tarea:
- comment_post - ejecutar directamente después de añadir un comentario a su base de datos
- comment_form - carrera cada vez que el formulario de comentarios es impreso desde una plantilla de tema
Básicamente, queremos capturar la variable HTTP_REFERER en el persistente $ _SESSION siempre que el usuario f Primero ve el formulario de comentarios. Luego los redirigiremos una vez que publiquen el comentario.
Crear comment-redirect.php
en la carpeta WordPress wp-content/plugins
.
He aquí una idea aproximada de lo que pondría en este archivo (lo dejo a usted para refinar/probarlo):
<?php
/*
Plugin Name: Post Comment Redirect
Plugin URI: http://example.com
Description: Redirects you to the previous page after posing a comment
Version: 0.1a
Author: Anonymous
Author URI: http://example.com
License: GPL2
*/
// Run whenever a comment is posted to the database.
// If a previous page url is set, then it is unset and
// the user is redirected.
function post_comment_redirect_action_comment_post() {
if (isset($_SESSION['PCR_PREVIOUS_PAGE_URL'])) {
$ref = $_SESSION['PCR_PREVIOUS_PAGE_URL'];
unset($_SESSION['PCR_PREVIOUS_PAGE_URL']);
header('Location: '.$ref);
}
}
// Run whenever comment form is shown.
// If a previous page url is not set, then it is set.
function post_comment_redirect_action_comment_form() {
if (!isset($_SESSION['PCR_PREVIOUS_PAGE_URL'])) {
if ($ref = $_SERVER['HTTP_REFERER']) {
$_SESSION['PCR_PREVIOUS_PAGE_URL'] = $ref;
}
}
}
add_action('comment_post', 'post_comment_redirect_action_comment_post');
add_action('comment_form', 'post_comment_redirect_action_comment_form');
vez que haya guardado su plugin, activarlo en el wp-admin plugins sección (generalmente se encuentra cerca de h ** p: //su-sitio-website.com/wp-admin).
¡Guau, gracias! Aunque casi no tengo ni idea de qué hacer con esto. Guardé el archivo y activé el complemento y parece que no funciona como está, pero creo que tendré que jugar con él. –
- 1. ¿Cómo redirigir a una página de administración diferente en Wordpress?
- 2. Wordpress add_rewrite_rule para redirigir la página incorrectamente
- 3. Cómo redirigir a la misma página después de iniciar sesión
- 4. Redirigir a una página después de un inicio de sesión
- 5. uso de htaccess para redirigir página de wordpress a subpágina
- 6. ¿Cómo redirigir a otra página después de 5 minutos?
- 7. cómo redirigir a la página de inicio
- 8. Redirigir la página después de iniciar sesión en Yii framework
- 9. redirigir a la página actual en ASP.Net
- 10. ASP.net redirigir a la página de llamada
- 11. Redirigir la página de inicio de sesión/registro de Wordpress a una página de inicio de sesión/registro personalizada
- 12. ASP.NET MVC redirigir después del inicio de sesión a la página de donde provino un usuario
- 13. cómo detener la página redirigir
- 14. Enviando usuario de nuevo a la página de referencia
- 15. Cómo redirigir a la misma página en PHP
- 16. Mostrando un cuadro de comentario en ActiveAdmin Show página personalizada
- 17. Referencia comentario genérico
- 18. JSF 2.0: Cómo redirigir a la página protegida después de usar HttpServletRequest.login
- 19. Volver a la página de referencia
- 20. Redirigir usuario a la URL originalmente deseada después de Entrar
- 21. dominio Comodín redirigir con WordPress
- 22. Página web redirigir a la página principal con CGI Python
- 23. cómo redirigir la página a https en php?
- 24. 301/302 redirigir desde la raíz de barra oblicua a la página de inicio específica
- 25. window.opener nulo después de redirigir?
- 26. Cómo redirigir a otra página usando PHP
- 27. redirigir a una página en particular después de enviar el formulario de contacto en Magento
- 28. Mostrar los comentarios en la página de inicio de wordpress
- 29. Redirigir a la página que contiene el signo # (hash) después de iniciar sesión
- 30. Cómo redirigir a la página de inicio de sesión después de que la sesión caduque en GWT Llamada RPC
¡Esto funciona perfectamente! ¡Muchas gracias! –
me salvaste el día :) – xsari3x