Formatieren des Kommentarbereichs in WordPress. Formatieren des Kommentarbereichs in WordPress Deaktivieren der Anzeige von Pings im Admin-Panel
Der Hintergrund zum Schreiben dieses Artikels ist typisch: Ich habe beschlossen, meine Kommentare mit einem separaten Stil hervorzuheben ... Glücklicherweise schreddere ich style.php jetzt schon seit mehreren Tagen und kenne die Grundregeln der CSS-Syntax. Und natürlich wurde aus dieser harmlosen Idee eine leichte Peinlichkeit, die Suche nach einer Lösung ... Am Ende hat alles geklappt. Und jetzt möchte ich Ihnen erzählen, mit welchen magischen Bewegungen ich meine eigenen Kommentare verziert habe.
Der Zweck aller unten beschriebenen Manipulationen besteht darin, Ihre Kommentare und Antworten für die Leser hervorzuheben. Wenn man es mit den Stilen nicht übertreibt, wird es recht elegant. Natürlich ist dies keine lebenswichtige Notwendigkeit. Jeder, der sich entschieden hat, Ihre Kommentare anzuzeigen, kann dies über seinen Spitznamen tun. Aber auch der Schönheitsgedanke ist vielen Bloggern wichtig.
Wenn wir außerdem darauf achten, wie die Antworten des Autors auf vielen großen und gut durchdachten Websites (z. B. smashingmagazine) formatiert sind, werden wir einen eigenen Stil für sie sehen. Offensichtlich wird dies dazu beitragen, die Benutzerfreundlichkeit zu verbessern.
Es ist besonders wichtig, einen separaten Stil für Autorenkommentare in Blogs zu verwenden, in denen baumartige Kommentare mit einem ziemlich tiefen Verschachtelungsgrad zulässig sind. Einfach ausgedrückt: Hier kann der Benutzer auf Kommentare antworten, auf Antworten antworten usw.
Schauen wir uns die Kommentarstile an, die bereits verwendet werden
Seien Sie nicht überrascht, wenn ich vorschlage, sozusagen vom Ende zu beginnen. Aber für Benutzer, die sich mit der Bearbeitung von WordPress-Themes nicht ganz wohl fühlen, ist dies die anschaulichste und offensichtlichste Möglichkeit.
Wählen Sie also einen Beitrag in Ihrem Blog aus, der Kommentare enthält. Natürlich brauchen wir auch hier Ihre Antworten. Nachdem Sie eine solche Seite geöffnet haben, klicken Sie mit der rechten Maustaste darauf und wählen Sie „Seitencode anzeigen“ (in den Browsern Google Chrome und Firefox gibt es definitiv eine solche Option).
Haben Sie keine Angst, wenn Sie ein Codeblatt sehen. Tatsächlich gibt es hier nichts Kompliziertes oder Geheimnisvolles. Scrollen Sie auf der Seite nach unten und Sie werden feststellen, dass zuerst die allgemeinen Informationen zum Beitrag angezeigt werden, dann der Text mit Formatierung. Schließlich finden Sie unten den Code für Kommentare. Sie können einfach Strg+F eingeben und in das angezeigte Fenster eingeben Kommentarliste und drücken Sie die Eingabetaste – Sie werden sofort in die gewünschte Zeile „geworfen“, in der das gesuchte Wort hell hervorgehoben wird.
Schauen wir uns nun an, wie unsere Kommentarstile markiert sind. Der Klarheit halber stammt der Code aus meinem Theme. Natürlich kann Ihr Code etwas anders aussehen und anders aufgebaut sein, aber die Hauptbedeutung einzelner Teile des Codes sollte klar sein:
KOMMENTARTEXT
- id="li-comment-">
$Tiefe,"max_Tiefe" => $args["max_Tiefe"]))); ?>
- , Weil WordPress erstellt automatisch schließende Tags basierend auf dem Markup verschachtelter Kommentare.
Nach der Veröffentlichung wird diese Funktion beim Generieren von Kommentaren aufgerufen und ermöglicht Ihnen, alle erforderlichen Änderungen vorzunehmen. Der Trick besteht darin, dass wir alles, was wir brauchten, mit den Standardeinstellungen und relativ begrenzten Einstellungen gemacht haben wp_list_comments()
Kehren wir nun zu den alten Methoden zurück – zusammen mit wp_list_comments fügen wir eine foreach-Schleife ein
Durch diese Verwendung ist die Vorlage abwärtskompatibel mit älteren Versionen von WordPress.
Nachdem wir nun wissen, wie man eine Kommentarschleife einrichtet, wollen wir sie an unsere Bedürfnisse anpassen und einige coole Tricks anwenden.
Implementierung seitenweiser Kommentare
Niemand weiß im Voraus, dass der Inhalt der Website Hunderte von Kommentaren anziehen kann. Was ich damit sagen will ist, dass wir alle Superstars sind und der Erfolg unerwartet kommen kann. Das Ansehen und Zurückspulen eines Beitrags mit Hunderten von Kommentaren kann wahnsinnig lange dauern. Im Allgemeinen haben wir sicherlich keine Angst vor vertikalem Scrollen (im Gegensatz zum horizontalen Scrollen), aber alles sollte einen Rand haben. Ein typischer Beitrag mit 60 Kommentaren kann bis zu 20.000 Pixel hoch sein!
Eine gute Möglichkeit, die Dinge zu organisieren, besteht darin, Ihren Kommentar-Feed zu paginieren und ihn Seite für Seite anzuzeigen.
Sobald Sie die Paginierung aktiviert haben, vergessen Sie nicht, Ihrer comments.php-Datei Funktionen hinzuzufügen, um „Vorher“- und „Später“-Links anzuzeigen.
Diese Links werden automatisch angezeigt und unterbrechen das Kommentarblatt, wenn die angegebene Anzahl von Kommentaren pro Seite überschritten wird. Bei weniger Kommentaren als dieser Anzahl werden die Links nicht angezeigt.
Und hier gibt es einen Haken. Es entsteht das bekannte SEO-Problem der Duplizierung von Inhalten durch seitenweise Kommentare. Dies liegt daran, dass für jede Kommentarseite dieselben URLs erstellt werden.
- https://yoursite.com/ghost-dad-rocked/
- https://yoursite.com/ghost-dad-rocked/comments-page-1/
- https://yoursite.com/ghost-dad-rocked/comments-page-2/
- https://yoursite.com/ghost-dad-rocked/comments-page-3/
Es ist klar, dass nur die Kommentare auf diesen Seiten unterschiedlich sein werden. Was das Gesamtbild noch verschlimmert, ist die Tatsache, dass jeder Kommentar seinen eigenen eindeutigen Bezug zum Zeitpunkt der Veröffentlichung hat, wodurch auch eine Menge Duplikate entstehen. Daher findet der Suchbot den gleichen Inhalt unter einer Vielzahl unterschiedlicher Links.
Um Doppelarbeit zu vermeiden, gibt es mehrere Lösungen:
- Verwenden Sie keine Seitenkommentare
- Verwenden Sie Meta-Tags, um kanonische URLs für jeden Beitrag zu erstellen
- Plugin verwenden
Wenn Ihre Website sehr beliebt ist oder werden wird, ist es natürlich besser, kanonische URLs zu verwenden. Wenn keine heftigen Diskussionen geplant sind, ist es einfacher, herkömmliche Kommentarblätter ohne Paginierung zu verwenden.
SEO für Paged Comments verfolgt einen noch radikaleren Ansatz: Sie entfernt den Beitragsinhalt von den Kommentarseiten und ersetzt ihn durch ein Zitat oder eine gekürzte Version des Beitrags.
Verschachtelte Kommentare implementieren
Mit verschachtelten Baumkommentaren können Besucher eine Antwort auf einen ausgewählten vorhandenen Kommentar schreiben und so einen umfassenden Diskussionsdialog erstellen. Nachdem Sie diese Funktion in den Einstellungen aktiviert haben, erscheint neben jedem Kommentar ein Link „Antworten“, über den Sie zu einem bestimmten Kommentar Stellung nehmen können.
Bevor sich diese Gelegenheit ergab, gab es eine Art Antwort auf den ausgewählten Autor, indem man seinen Namen und das @-Zeichen im Text des Kommentars verwendete, etwa „@Vasya, du liegst falsch!“ Mit einigen Veränderungen hat diese Methode in vielen Anwendungen im Internet Fuß gefasst und lebt beispielsweise immer noch auf Twitter. Und in modernen Versionen von WordPress muss eine solche Erwähnung nicht verwendet werden.
Jetzt müssen Sie nur noch auf den entsprechenden Link „Antworten“ klicken und sich zu Wort melden. Sobald der Kommentartext genehmigt wurde, wird er direkt unter dem Kommentar angezeigt, über den er geschrieben wurde.
Wenn Ihre Vorlage diese Art von Kommentaren nicht unterstützt, gibt es eine einfache Möglichkeit, sie hinzuzufügen:
- Wir erstellen Sicherungskopien von Dateien, was theoretisch bereits zur Gewohnheit werden sollte
- Aktivieren Sie verschachtelte Kommentare in den Einstellungen Optionen→Diskussionseinstellungen→Baumkommentare zulassen
- Fügen Sie den folgenden Code zu header.php unmittelbar vor wp_head() hinzu
- Direkt vor dem schließenden Tag zur comments.php hinzufügen
- Lassen Sie uns das überprüfen
- Wir prüfen, ob das Kommentarformular beigefügt ist mit dem Attribut id="respond".
- Fügen Sie direkt vor dem Kommentarformular einen Link zum Abbrechen des Kommentars hinzu
- In comments.php ersetzen wir die alte Schleife durch die aktualisierte
Nun, das ist alles :) Traditionell gibt es eine Billion verschiedener Möglichkeiten, es an Ihre Bedürfnisse anzupassen und neu zu gestalten, aber ich denke, Sie verstehen, worauf es ankommt. Sie müssen lediglich daran denken, die Stile für verschachtelte Kommentare festzulegen
Kommentarliste li. Depth-1() .commentlist li. Depth-2() .commentlist li. Depth-3()
Wir trennen Kommentare, Pingbacks und Trackbacks
Wenn Sie Antworten auf Ihren Beitrag anzeigen, können Sie die Übersichtlichkeit wirksam reduzieren, indem Sie Kommentare und Pings getrennt anzeigen. Dadurch wird nicht nur der Diskussionsablauf nicht unterbrochen, sondern es kann auch mehr Aufmerksamkeit auf die Kommentare gelenkt werden.
Dies ist einer der ältesten Tricks und es gibt viele Möglichkeiten, ihn umzusetzen. Hier ist ein Beispiel für eine einfache Aufteilung mithilfe von wp_list_comments()-Parametern:
Kommentare
Pingbacks/Trackbacks
Allerdings hat dieser Code einen Nachteil: Die Header werden auch dann angezeigt, wenn keine Kommentare oder Pings vorhanden sind. Es wäre besser, eine leicht verbesserte Version zu verwenden:
Kommentare
Trackbacks/Pingbacks
Wenn Pingbacks angezeigt werden, wird ein Link angezeigt, der von einem Text umgeben ist, der von der verlinkenden Seite stammt. Dieses Snippet kann unterschiedlich groß sein und ist schwer zu kontrollieren, weil... Es ist nicht im Voraus bekannt, was dort angezeigt wird. Glücklicherweise können Sie die Anzeige dieses Textes aufräumen und nur eine übersichtliche Linkliste erstellen. Dazu müssen Sie die Datei „functions.php“ hinzufügen
Funktion cleanPings($comment, $args, $ Depth) ( $GLOBALS["comment"] = $comment; echo "
- „.comment_author_link().“
";}Fügen Sie dann den erforderlichen Rückrufparameter zum Kommentarfunktionsaufruf hinzu
Pingbacks und Trackbacks zerstören
Sie können nicht verhindern, dass Personen auf Ihre Website verlinken, aber Sie können festlegen, dass auf ihnen keine Trackbacks und Pingbacks angezeigt werden. Ursprünglich wurden Pingbacks, wie viele andere Dinge im Internet auch, für einen guten Zweck erfunden – um Sie darüber zu informieren, dass jemand mit Ihnen verlinkt hat. Und jetzt nutzen einige Leute sie weiterhin und ziehen sie zurück. Doch die Trackback-Technologie hat sich aufgrund der massiven Spam-Massen völlig diskreditiert, daher wäre es besser, sie zu deaktivieren.
Deaktivieren Sie die Anzeige von Pings im Admin-Bereich
Deaktivieren Sie dazu in den Diskussionseinstellungen die Option Erlauben Sie Benachrichtigungen von anderen Blogs. Dadurch wird die Funktionalität von Pingbacks und Trackbacks vollständig deaktiviert, Sie können diese Funktion jedoch für einen separat ausgewählten Eintrag in den Einstellungen aktivieren.
Pings aus Kommentaren ausschließen
Wir verwenden den Parameter für die Funktion wp_list_comments(), sodass nur Kommentare angezeigt werden können
Löschen Sie wp-trackback.php
Dies ist ein sehr einfacher und effektiver Weg - Physisches Löschen der Datei wp-trackback.php aus dem WordPress-Stammverzeichnis. Dies ist eine absolut sichere Methode, allerdings wird die Datei nach einem WordPress-Upgrade wiederhergestellt und muss erneut gelöscht werden.
Deaktivieren Sie die Verwendung von Plugins
Dies kann über ein Plugin erfolgen
Das Plugin selbst ist sehr einfach aufgebaut und besteht aus nur einer Datei, sodass der Inhalt einfach kopiert und in die Datei „functions.php“ eingefügt werden kann
Klasse DisableTrackbacks ( function DisableTrackbacks() (add_action("pings_open", array(&$this, "pings_open"));) function pings_open($open) (return ("1" == get_query_var("tb")) ? FALSE : $open;) ) add_action("plugins_loaded", create_function("", "global $DisableTrackbacks; $DisableTrackbacks = new DisableTrackbacks();"));
Nach der Platzierung zerstört die DisableTrackbacks-Funktion alle Trackbacks. Aber die Pingbacks bleiben bestehen.
Wir steuern Kommentare direkt in der Datenbank
WordPress bietet mehrere Möglichkeiten, um zu steuern, ob ein Beitrag zum Kommentieren geöffnet ist oder nicht. Im Admin-Bereich können Sie das Hinterlassen von Kommentaren zu zukünftigen Beiträgen auf der gesamten Website vollständig verbieten. Außerdem können Sie in einem einzelnen Eintrag im Editor im Diskussionsblock auswählen, ob Kommentare dafür geöffnet sein sollen oder nicht.
Direkt über diesen Methoden befindet sich jedoch ein Plugin, mit dem Sie alle alten Kommentare nach einer bestimmten Zeitspanne ausblenden und zur Moderation senden können. Und ohne Plugins können Sie das Kommentieren mit einfachen Abfragen an die Datenbank aktivieren und deaktivieren.
Pings global für alle Benutzer zulassen
UPDATE wp_posts SET ping_status = "open";
Pings für alle Benutzer global verbieten
UPDATE wp_posts SET ping_status = "geschlossen";
Pings bis zu einem bestimmten Veröffentlichungsdatum weltweit verbieten
UPDATE wp_posts SET ping_status = „closed“ WHERE post_date< "2009-09-09" AND post_status = "publish";
Solche Anfragen ermöglichen eine regelmäßige Reinigung. Und hier ist ein Beispiel für Anfragen nach globalen Erlaubnissen oder Kommentarverboten
UPDATE wp_posts SET comment_status = „open“, ping_status = „open“ WHERE comment_status = „closed“ AND post_status = „publish“;
Eigentlich müssen wir nur Kommentare mit Ihrem Spitznamen finden (in diesem Blog schreibe und antworte ich beispielsweise unter dem Spitznamen Katyaru). Und direkt über der erforderlichen Zeile, die so beginnt:
Vielen Dank, Sie haben eine tolle Seite!