En la cuarta parte de la serie, revisamos el tercer lote de etiquetas de plantilla de WordPress. En esta quinta parte, vamos a ver el cuarto lote de las casi 200 etiquetas de plantilla. A lo largo del tutorial, volveremos a ver etiquetas de plantilla sobre comentarios, al igual que el lote anterior.
Cómo obtener y mostrar un enlace a la sección «Comentarios»: get_comments_link() y comments_link()
Estas etiquetas de plantilla devuelven y muestran el enlace a la sección «Comentarios» de la entrada.
Parámetros
comments_link() no acepta ningún parámetro, pero get_comments_link() acepta uno:
$post_ID(opcional, entero u objeto): El ID del post. (Predeterminado: Post actual)
Uso
|
1 2 3 4 5 |
<?php comments_link(); ?> |
Cómo obtener y mostrar la lista de comentarios: wp_list_comments()
Esta popular etiqueta de plantilla enumera los comentarios que han sido enviados a una entrada.
Parámetros
Esta etiqueta de plantilla acepta dos parámetros:
$args(opcional, matriz): Matriz de los argumentos siguientes:- ‘
walker'(objeto): Instancia de una clase Walker para enumerar comentarios. (Predeterminado:NULL) 'max_depth'(entero): La profundidad máxima de los comentarios. (Predeterminado: Vacío)'style'(cadena): El estilo de orden de lista (‘ul’ o ‘ol’). (Predeterminado: ‘ul’)'callback'(cadena): Función de devolución de llamada que se va a utilizar. (Predeterminado:NULL)'end-callback'(cadena): Función de devolución de llamada que se usará al final. (Predeterminado:NULL)'type'(cadena): Tipo de comentarios a enumerar (‘all’, ‘comment’, ‘pingback’, ‘trackback’ o ‘pings’). (Predeterminado: ‘all’)'page'(entero): ID de página para el que enumerar los comentarios. (Predeterminado: Vacío)'per_page'(entero): Número de comentarios que se pueden enumerar por página. (Predeterminado: Vacío)'avatar_size'(entero): Dimensiones de las imágenes de avatar. (Predeterminado: 32)'reverse_top_level'(cadena): Ordenación de los comentarios enumerados (‘desc’ o ‘asc’). (Predeterminado:NULL)'reverse_children'(booleano): Si deseas invertir los comentarios secundarios en la lista. (Predeterminado: Vacío)'format'(cadena): Cómo formatear la lista de comentarios. (Predeterminado: ‘html5’ si el tema admite el marcado HTML5, de lo contrario ‘xhtml’)'short_ping'(booleano): Si se da salida a los pings cortos. (Predeterminado:FALSE)'echo'(booleano): Si deseas hacer eco de la salida (TRUE) o devolverla (FALSE). (Predeterminado:TRUE)
- ‘
$comments(opcional, matriz): Matriz de objetos de comentario.(Predeterminado: Todos los comentarios del post actual)
Uso
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<?php $args = array( // Usa una lista ordenada para los comentarios. 'style' => 'ol', // Obtén solo los comentarios. 'type' => 'comments', // Cantidad personalizada de comentarios por página. 'per_page' => 15, // Reduce el tamaño del avatar. 'avatar_size' => 16, // Fuerza el uso de marcado HTML5. 'format' => 'html5', // Devuelve la salida en lugar de hacer echo de ella. 'echo' => 0 ); $comments_list = wp_list_comments( $args ); ?> |
Cómo obtener y mostrar el número de comentarios: get_comments_number() y comments_number()
Estas etiquetas de plantilla obtienen y muestran cuántos comentarios se publican en el post.
Parámetros
get_comments_number() solo acepta un parámetro:
$post_ID(opcional, entero u objeto):El ID del post.(Predeterminado: Post actual)
Y comments_number() acepta tres parámetros:
$zero(opcional, cadena):Texto a mostrar si no hay comentarios.(Predeterminado: ‘Sin comentarios’)$one(opcional, cadena):Texto a mostrar si solo hay un comentario.(Predeterminado: ‘1 Comentario’)$more(opcional, cadena):Texto a mostrar si hay más de un comentario.(Predeterminado: ‘% Comentarios’)
Uso
|
1 2 3 4 5 6 7 8 9 |
<?php // Muestra la cantidad de comentarios de un post concreto. comments_number( 11 ); // Muestra la cantidad de comentarios del actual post. $comments_num = get_comments_number( '0', '1', '%' ); ?> |
Cómo obtener y mostrar clases automáticas para cada comentario: get_comment_class() y comment_class()
Estas etiquetas de plantilla te permiten añadir clases semánticas generadas en donde quieras en el bucle de comentarios.
Parámetros
get_comment_class() acepta tres parámetros:
$class(opcional, cadena o matriz):Nombres de clase adicionales para añadir.(Predeterminado: Vacío)$comment_ID(opcional, entero):El ID del comentario con el que trabajar.(Predeterminado: ID del comentario actual)$post_ID(opcional, entero u objeto):El ID del post.(Predeterminado: Post actual)
Y comment_class() acepta cuatro parámetros:
$class(opcional, cadena o matriz): Nombres de clase adicionales a añadir. (Predeterminado: Vacío)$comment_ID(opcional, entero): El ID del comentario con el que trabajar.(Predeterminado: ID del comentario actual)$post_ID(opcional, entero u objeto): El ID del post.(Predeterminado: Post actual)$echo(opcional, booleano): Si hacer echo (TRUE) o devolver (FALSE) la etiqueta. (Predeterminado:TRUE)
Uso
|
1 2 3 4 5 6 7 8 9 |
<?php // Muestra las clases del comentario con una clase extra. comment_class( 'mytheme-comment' ); // Devuelve un comentario concreto de un post específico. $special_comment_classes = get_comment_class( '', 225, 98 ); ?> |
Mostrar el formulario de comentarios: comment_form()
Esta etiqueta de plantilla muestra todo el formulario de comentarios.
Parámetros
Esta etiqueta de plantilla acepta dos parámetros:
$args(opcional, matriz):Matriz de los argumentos siguientes:'fields'(array): Una matriz asociativa de códigos HTML de campos de comentario predeterminados (‘autor’, ‘email’ y ‘url’).(Predeterminado: Los tres)'comment_field'(cadena): Código HTML para el elementoTEXTAREAdel comentario.'must_log_in'(cadena): Código HTML para el mensaje «debes iniciar sesión para comentar».'logged_in_as'(cadena): Código HTML para el mensaje «Sesión iniciada como…». (Utiliza%1$spara la dirección URL del perfil,%2$spara el nombre de usuario y%3$spara la dirección URL de cierre de sesión.)'comment_notes_before'(cadena): Código HTML para las notas mostradas antes del formulario de comentario.'comment_notes_after'(cadena): Código HTML para las notas que se muestran después del formulario de comentario.'id_form'(cadena): El identificador del elementoFORMdel formulario de comentario.'id_submit'(cadena): El ID del botón de envío.'name_submit'(cadena): El parámetroNAMEdel botón de envío.'title_reply'(cadena): Etiqueta para el botón «Deja una respuesta».'title_reply_to'(cadena): Etiqueta para el botón «Dejar una respuesta a %s».'cancel_reply_link'(cadena): Texto del enlace «Cancelar respuesta».'label_submit'(cadena): Etiqueta para el botón «Publicar comentario».'format'(cadena): El formato del formulario de comentario (‘xhtml’ o ‘html5’, el valor predeterminado es ‘xhtml’).
$post_ID(opcional, entero u objeto): El ID del post.(Predeterminado: Post actual)
Uso
|
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php $args = array( 'fields' => array( 'author', 'email' ), 'must_log_in' => __( 'Debes iniciar sesión para poder comentar', 'translation-domain' ), 'label_submit' => __( 'Shoot It', 'translation-domain' ), 'format' => 'html5' ); comment_form( $args ); ?> |
Mostrar un título para el formulario de comentario: comment_form_title()
Esta etiqueta de plantilla se hace eco de un título dinámico para el formulario de comentario.
Parámetros
Esta etiqueta de plantilla acepta tres parámetros:
$noreplytext(opcional, cadena): Texto del enlace si no es un enlace de «responder al comentario». (Predeterminado: ‘Dejar una respuesta’)$replytext(opcional, cadena): Texto del enlace si se trata de un enlace de «responder al comentario». (Predeterminado: ‘Dejar una respuesta a %s’)$linktoparent(opcional, booleano): Si vincular el nombre del comentarista a su comentario o no. (Predeterminado:TRUE)
Uso
|
1 2 3 4 5 |
<?php comment_form_title( __( 'Escribe tu respuesta', 'translation-domain' ), __( 'Talk Back to', 'translation-domain') . ' %s', false ); ?> |
Cómo mostrar el enlace «Responder al comentario»: get_comment_reply_link() y comment_reply_link()
Estas etiquetas de plantilla te permiten devolver o mostrar un enlace de respuesta para el comentario dado.
Parámetros
Ambas etiquetas de plantilla aceptan tres parámetros:
$args(opcional, matriz):Matriz de los argumentos siguientes:'add_below'(cadena): La primera parte del selector utilizado para identificar el comentario que se va a responder a continuación. El valor resultante se pasa como el primer parámetro a addComment.moveForm(), concatenado como $add_below-$comment->comment_ID.(Predeterminado: ‘comment’)'respond_id'(cadena): Selector que identifica el comentario de respuesta. Se pasa como tercer parámetro a addComment.moveForm() y se anexa a la dirección URL del enlace como un valor hash.(Predeterminado: ‘respond’)'reply_text'(cadena): Texto del enlace ‘Responder’.(Predeterminado: ‘Responder’)'login_text'(cadena): Texto del enlace para responder si se ha cerrado la sesión.(Predeterminado: ‘Iniciar sesión para responder’)'depth'(entero): Profundidad del nuevo comentario: debe ser mayor que 0 y menor que el valor de la opción ‘thread_comments_depth’ establecido en Ajustes > Comentarios.(Predeterminado: 0)'before'(cadena): Código HTML a añadir antes de la salida.(Predeterminado: Vacío)'after'(cadena): Código HTML a añadir después de la salida.(Predeterminado: Vacío)
$comment_ID(opcional, entero):El ID del comentario con el que trabajar.(Predeterminado: ID del comentario actual)$post_ID(opcional, entero u objeto):El ID del post.(Predeterminado: Post actual)
Uso
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<?php // Display the link with default configuration. comment_reply_link(); // Get the link with some customization. $args = array( 'reply_text' => __( 'Shout Back', 'translation-domain' ), 'login_text' => __( 'Log in to Shout Back', 'translation-domain' ), 'after' => '<hr class="comment-reply-after" />' ); $comment_reply_link = get_comment_reply_link( $args ); ?> |
Lo que te queda por leer:
Deja una respuesta