¿Cómo agregar una clase CSS adicional al enlace comentario-respuesta generado por la función comment_reply_link?

2 minutos de lectura

Entonces, aquí está el problema al agregar la clase css en la sección de respuesta de comentarios de WordPress

comentario_respuesta_enlace función agrega clase css comentario-respuesta-enlace en el botón de respuesta. ¿Hay alguna forma en que pueda agregar una nueva clase css a comentario-respuesta-enlace ?

Sé que puedo hacer eso usando jquery, pero ¿hay alguna forma de hacerlo? sin usar jquery ?

avatar de usuario
bamz springfield

Con esto agrego clase a comentario-respuesta-enlace

<?php 
    $myclass="icon-share-alt";
    echo preg_replace( '/comment-reply-link/', 'comment-reply-link ' . $myclass, 
        get_comment_reply_link(array_merge( $args, array(
            'add_below' => $add_below, 
            'depth' => $depth, 
            'max_depth' => $args['max_depth']))), 1 ); 
?>

Captura de pantalla:

class%2Bcomment%2Blink

Puede agregar un filtro a la comment_reply_link función.

function comment_reply_link_filter($content){
    return '<div class="yourclass">' . $content . '</div>';
}
add_filter('comment_reply_link', 'comment_reply_link_filter', 99);

Sé que no está directamente en el elemento, pero ahora puede diseñar el elemento con .yourclass > .comment-reply-link.

  • Gracias por su respuesta 🙂 En realidad, quiero integrar los botones de Bootstrap en la sección de respuesta de comentarios de WordPress. Entonces, no creo que la solución anterior sea una buena opción. Si conoces alguna otra forma, se te agradecerá. Gracias de nuevo !

    – Rajeeb

    1 de marzo de 2014 a las 18:51

  • ¿Puedes publicar lo que obtienes si reemplazas return '<div class="yourclass">' . $content . '</div>'; por return var_dump($content);? Tal vez pueda analizar la salida e intentar agregar su clase.

    – lefoy

    1 de marzo de 2014 a las 18:56


  • Después de usar su primer código, recibí este error. Error fatal: no se puede volver a declarar comment_reply_link_filter() (anteriormente declarado en E:\zampp\htdocs\wp\wp-content\themes_raw\inc\template-tags.php:115) en E:\xampp\htdocs\wp\wp-content \themes_raw\inc\template-tags.php en la línea 115

    – Rajeeb

    1 de marzo de 2014 a las 19:21

  • Después de reemplazar la segunda línea con return var_dump($content); aparece otro error string(162) “Reply” Error fatal: no se puede volver a declarar comment_reply_link_filter_test() (anteriormente declarado en E:\xampp\htdocs\wp\wp-content\themes_raw\inc\template-tags.php:115) en E :\xampp\htdocs\wp\wp-content\themes_raw\inc\template-tags.php en la línea 115

    – Rajeeb

    1 de marzo de 2014 a las 19:23

  • ¿Sigues recibiendo el error si reemplazas comment_reply_link_filter por addclass_comment_reply_link_filter? Asegúrese de reemplazar el nombre en la función add_filter también.

    – lefoy

    1 de marzo de 2014 a las 19:36

Combinando un par de las otras respuestas

function custom_comment_reply_link($content) {
    $extra_classes="button button--small button--white";
    return preg_replace( '/comment-reply-link/', 'comment-reply-link ' . $extra_classes, $content);
}

add_filter('comment_reply_link', 'custom_comment_reply_link', 99);

Esto agrega el valor de $extra_classes a todos los enlaces de respuesta atributo ‘clase’.

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad