Wie füge ich dem von der Funktion comment_reply_link generierten Kommentar-Antwort-Link eine zusätzliche CSS-Klasse hinzu?

Lesezeit: 2 Minuten

Hier ist also das Problem beim Hinzufügen von CSS-Klassen im WordPress-Kommentarantwortabschnitt

comment_reply_link Funktion fügt CSS-Klasse hinzu Kommentar-Antwort-Link im Antwort-Button. Gibt es eine Möglichkeit, eine neue CSS-Klasse hinzuzufügen Kommentar-Antwort-Link ?

Ich weiß, dass ich das mit jquery machen kann, aber gibt es eine Möglichkeit, dies zu tun? ohne jquery zu verwenden ?

Benutzer-Avatar
Bamz Springfield

Damit füge ich hinzu Klasse zu Kommentar-Antwort-Link

<?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 ); 
?>

Bildschirmfoto:

class%2Bcomment%2Blink

Sie können einen Filter hinzufügen comment_reply_link Funktion.

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

Ich weiß, es ist nicht direkt auf dem Element, aber Sie können das Element jetzt damit gestalten .yourclass > .comment-reply-link.

  • Vielen Dank für Ihre Antwort 🙂 Eigentlich möchte ich Bootstrap-Buttons in den WordPress-Kommentarantwortbereich integrieren. Ich denke also nicht, dass die obige Lösung eine gute Wahl wäre. Wenn Sie einen anderen Weg kennen, dann wird es geschätzt. Danke nochmal !

    – Rajeb

    1. März 2014 um 18:51 Uhr

  • Kannst du posten, was du bekommst, wenn du tauschst? return '<div class="yourclass">' . $content . '</div>'; zum return var_dump($content);? Vielleicht können Sie die Ausgabe analysieren und versuchen, Ihre Klasse hinzuzufügen.

    – Lefoy

    1. März 2014 um 18:56 Uhr


  • Nachdem ich Ihren ersten Code verwendet habe, habe ich diesen Fehler erhalten. Schwerwiegender Fehler: Kommentar_reply_link_filter() (zuvor in E:\zampp\htdocs\wp\wp-content\themes_raw\inc\template-tags.php:115 deklariert) in E:\xampp\htdocs\wp\wp-content kann nicht neu deklariert werden \themes_raw\inc\template-tags.php auf Zeile 115

    – Rajeb

    1. März 2014 um 19:21 Uhr

  • Nach dem Ersetzen der zweiten Zeile durch return var_dump($content); ein weiterer Fehler zeigt string(162) “Reply” Fatal error: Cannot redeclare comment_reply_link_filter_test() (zuvor deklariert in E:\xampp\htdocs\wp\wp-content\themes_raw\inc\template-tags.php:115) in E :\xampp\htdocs\wp\wp-content\themes_raw\inc\template-tags.php auf Zeile 115

    – Rajeb

    1. März 2014 um 19:23 Uhr

  • Bekommst du den Fehler immer noch, wenn du austauschst comment_reply_link_filter durch addclass_comment_reply_link_filter? Stellen Sie sicher, dass Sie den Namen auch in der Funktion add_filter ersetzen.

    – Lefoy

    1. März 2014 um 19:36 Uhr

Kombinieren Sie ein paar der anderen Antworten

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);

Dies erhöht den Wert von $extra_classes zu allen Antwortlinks Attribut ‘class’.

1283470cookie-checkWie füge ich dem von der Funktion comment_reply_link generierten Kommentar-Antwort-Link eine zusätzliche CSS-Klasse hinzu?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy