Wordpress: cómo escribir una respuesta al comentario utilizando jQuery
Viernes, 3 de octubre 2008Recientemente Cristiano Up ha lanzado un plugin útil para Wordpress que pueden añadir dos enlaces a cada comentario en un post (tal vez tengas algo similar instalado, como en el directorio, que es atado Wordpress.org una pareja, sino como un software de italianos el evento en honor a la excelente labor realizada por los cristianos). Estos vínculos (respuesta y cita), se encuentran y / o citar al autor de un comentario mediante la realización de la operación de mandrinado para insertar el signo de arroba (@) para indicar a los destinatarios a quienes. En este tutorial te mostraré - para el usuario promedio de los expertos - cómo agregar estas dos características a mano, sin recurrir a la instalación de cualquiera de Plugin. También aprovechar las posibilidades de jQuery para la parte en Javascript. La técnica que estoy planteando es la misma que utiliza para introducir esta característica en este blog.
Nota: El uso de un plugin es la mejor solución para aquellos que suelen cambiar con frecuencia de su plantilla de WordPress o, al menos, tiene en previsión de hacerlo. Este tutorial sólo se mostrará cómo realizar intervenciones específicas en el código de Wordpress y está dedicado a los más curiosos.
Editar el comments.php
El primer cambio que hacemos es poner el link "responder" y "unidades" en cada comentario. Para ello editar el comments.php archivo en la carpeta raíz de nuestro tema. Este archivo contiene todas las instrucciones que le permiten ver los comentarios al final de una entrada. La sección que nos ocupa (que puede variar ligeramente de un tema a otro) es el ciclo de la creación de diversos comentarios, identificado por:
- ( $comments as $comment ) : ?> <? Php foreach ($ comentarios como $ comment):?
- ?> "> <li id = "comment-<? php comment_ID ()?>">
- / / ...
- </ Li>
- ; /* end for each comment */ ?> <? Php endforeach / * end for each comment * /?>
En ese lazo alrededor de una etiqueta de comentario solo se encierra en li Inmediatamente después de la etiqueta de apertura li o inmediatamente antes de la etiqueta de cierre li podemos utilizar nuestros vínculos, encerrándolo en un div y establecer algunas clases que nos ayudarán a definir con mayor precisión el diseño:
- <div class="jqr2c_ul">
- ?> ')">Rispondi</a> <a href="javascript:jqr2c_quote('comment- <?php comment_ID ( ) ?> ')">Quota</a> <a href = "javascript: jqr2c_reply ( 'comment-<? php comment_ID ()?>')"> Responder </ a> <a href =" javascript: jqr2c_quote (' comment-<? ()?>' comment_ID php ) "> Compartir </ a>
- </ Div>
Nota: podemos mejorar nuestro código también añadir un control sobre el estado de las entradas (abierto o cerrado) y sobre el tipo de comentario (Pingback, trackback, etc ...). Por ejemplo la entrada:
- ( comments_open ( ) && <? Php if (comments_open () & &
- comment_type != "trackback" && $ Comentario -> comment_type! = "Trackback" & &
- comment_type != "pingback" ) { ?> $ Comentario -> comment_type! = "Pingback") (>
- <div class="jqr2c_ul">
- ?> ')">Rispondi</a> <a href="javascript:jqr2c_quote('comment- <?php comment_ID ( ) ?> ')">Quota</a> <a href = "javascript: jqr2c_reply ( 'comment-<? php comment_ID ()?>')"> Responder </ a> <a href =" javascript: jqr2c_quote (' comment-<? ()?>' comment_ID php ) "> Compartir </ a>
- </ Div>
- ?> <? Php)?>
Editar el header.php
Los enlaces que ponemos en su comments.php llamó a dos funciones de JavaScript, en este jqr2c_reply() caso jqr2c_reply() y jqr2c_quote() Por lo tanto, se incluyen estas funciones en la cabecera de la página, se define en el header.php de header.php Editar este archivo y posizioniamoci antes de cerrar la head etiqueta o antes de la llamada a wp_header() WordPress wp_header() e introducir las siguientes líneas de código:
- <? Php
- / **
- * Insertar el estilo y el guión sólo si estamos viendo
- * Un solo puesto y los comentarios están abiertos
- * /
- is_single ( ) && comments_open ( ) ) { ?> if (is_single () & & comments_open ()) (?>
- <style>
- / * _____________ Aquí definimos nuestros estilos * /
- div.jqr2c_ul (margin: 8px 0 30px 400px)
- / * Etc ... * /
- </ Style>
- <script type="text/javascript">
- <!--//
- jqr2c_reply función (ID) (
- var aut = jQuery ( 'p #' + id). los niños ( 'citar'). texto ();
- ( 'textarea jQuery # comment'). texto ( '<b> @' + aut + '</ b >:'). focus ();
- )
- función jqr2c_quote (ID) (
- var aut = jQuery ( 'p #' + id). los niños ( 'citar'). texto ();
- var c = jQuery ( 'p #' + id). los niños ( 'p'). texto ();
- ( 'textarea jQuery # comment'). texto ( '<b> @' + aut + '</ b>: \ n <blockquote>' + c + '</ blockquote> \ n'). focus ();
- )
- //-->
- </ Script>
- ?> <? Php)?>
Si tu blog, como en mi caso, ya utiliza jQuery, esto es todo lo que necesitas! De lo contrario, puede añadir estas líneas al código anterior después de if (is_single() && comments_open())
- is_single ( ) && comments_open ( ) ) { ?> if (is_single () & & comments_open ()) (?>
- / / JQuery Incluir a través de la API de Google Ajax Library
- "text/javascript" src = "http://www.google.com/jsapi" ></ script > Tipo de <script = "text / javascript" src = "http://www.google.com/jsapi"> </ script>
- "text/javascript" > google . load ( "jquery" , "1.2.6" ) </script> Tipo de <script = "text / javascript">. Google de carga ( "jquery", "1.2.6") </ script>
- / / ... idénticas ...
Los dos guiones incluyen jQuery a través del servicio de Google que se explica en el Google AJAX API Library: un punto de inflexión para los desarrolladores de













Guía excelente, como siempre!
@ Camu:
Pero ¿por qué jQuery problemas (con todo el peso que implica, aunque mínimo) cuando se puede hacer todo a mano con JS simple?
Entre otras cosas, aquí de usted acerca de Firefox 3.0.3 si el área de texto ya ha "tenido" un enfoque botones no funcionan ..
@ Napolux:
Puede ser útil si, como en mi caso ya está usando jQuery por otras razones. Sin embargo, es cierto que se puede lograr a través de un Javascript "simple", pero siempre es útil para aprovechar la estructura existente de trabajo (jQuery, Prototype.js, Dojo, etc ...) debido principalmente a garantizar la compatibilidad cruzada navegador no está siempre fácil de aplicar (no en este caso).
@ Napolux:
Para mí, si he entendido bien, él no ... ? Sin embargo, podría ser un gusano fixare
En primer lugar quiero agradecer mucho por la revisión de la extensión que ahora también ofrece la posibilidad de trasladarse entre las observaciones, además de las características de Presupuesto y respuesta.
Por desgracia, aunque me ha informado varias veces por otros, aún no he sido informado (junto con otros que me di cuenta) el depósito de WordPress.org.
Voy a hacer lo antes
En cuanto a la solución propuesta es definitivamente la mejor si usted ya está usando jQuery, la única desventaja es que a mí me parece que no permite a la lista una selección parcial del texto.
Para aquellos interesados en una solución alternativa usando Javascript puro me gustaría señalar el primer artículo que escribí recientemente sobre temas conexos, y de la que a continuación (después de muchas peticiones para los lectores) se acercó a la ejecución del plugin:
Un procedimiento para la cita automáticamente los comentarios en un post
El procedimiento también permite la parcial, citando el texto y es multi-navegador.
Un cordial saludo a Giovambattista con quien compartir no sólo la pasión por la informática y la programación (yo también soy el padre de gemelos
)
@ Cristiana: tiene usted razón en desventaja en la selección, evitaron deliberadamente, porque tenía un propósito, "la enseñanza" y / o descriptivo y no sustitutiva de la operación de su gran plugin


Ponerse de acuerdo sobre una pasión por la programación y la "difícil" crecer los gemelos
Si usted tiene alguna idea para un nuevo plugin de Wordpress que me gustaría trabajar con usted si usted desea!
Saludos y hasta pronto
@ Napolux:
El problema es el uso del
text()métodotext()de jQuery. Esto funciona hasta que se añade nuevo contenido. Mejor utilizar elattr('value')formaattr('value')@ Giovambattista Fazioli:
Supuse
Lo único que me podía dar un inmenso placer, sin duda sacar provecho de sus habilidades y conocimientos en
@ Cristiano: Véase la respuesta a un comentario jQuery
@ Giovambattista Fazioli:

Ya he "visto" y "verificado" por la de referencia
Por fin encontré el tiempo para crear me una cuenta en el repositorio y presentar el plugin de WordPress: no sé lo que se necesita para aprobar
Si no se toma mucho tiempo, los demás también sugieren que ya he logrado.
Wordpress: cómo escribir una respuesta al comentario utilizando jQuery ...
Cristiano Hasta hace poco publicó un útil plugin para Wordpress que puede añadir dos enlaces a cada comentario en un post (tal vez tengas algo similar instalado, como en el directorio, me ataron que Wordpress.org una pareja, sino como ...
Hola que son muy buenas ... excelentes guías!
Felicidades
Tengo un blog me Anke ==> Si usted va Visitagao:
PanHack-Blog
la gente le encanta que escriben "Anke"
apenas para que nunca voy a ir a visitar su blog, mi querido PanHack!
@ Camu:
Giovambattista Lo siento, me desperté un poco ácido 'esta mañana
Excelente guía