Beiträge von m266

    Hallo zusammen,

    ich erstelle gerade meine neue Website und will einzelne Seiten mit den dazugehörigen Bildern von der bisherigen Website umziehen. Das geht natürlich per Hand, ist aber mühsam. Die WordPress-Werkzeuge ermöglichen nur einen kompletten Umzug aller Seiten (oder nach Datum), was in meinem Fall unpassend ist. Gibt es einen Trick zur Lösung meines Problems?

    Ja, erstens das:
    Zweites wird der Code nur dann aufgerufen, wenn Du im Backend aktiv selbst das Menü Kommentare aufrufst.

    Drittens macht der Code nicht das, was Du beschreibst, also weder regelmäßig automatisch noch wird nach Alter unterschieden.

    Danke für die Erläuterungen. Dann bleibt nur der Einsatz eines entsprechenden Plugins wie "Advanced Database Cleaner", was ich im Grunde vermeiden wollte.

    Eine "saubere" WordPress Lösung wäre ein regelmässiger [FONT=Courier New]get_comments()[/FONT] Aufruf mit entspr. [FONT=Courier New]date_query[/FONT] und [FONT=Courier New]status[/FONT] Parametern mit anschliessenden passenden [FONT=Courier New]wp_delete_comment()[/FONT] Aufrufen. Mehr dazu findet sich in den Entwicklerdokumentation https://developer.wordpress.org/


    Danke für den Hinweis. Für die Umsetzung fehlen mir leider die Kenntnisse (nur Grundlagenwissen vorhanden, was bisher ausreicht).

    Ich habe mir nochmal den Tipp von Maxe vorgenommen und das kleine Script wie hier beschrieben abgeändert (prepare durch get_results ersetzt). Nun werden die Kommentare aus Spam wie gewünscht gelöscht und alle übrigen Kommentare bleiben erhalten.
    Hier das geänderte Script:


    Spricht etwas gegen diese Lösung?

    Ich vermute, da musst du dir ein eigenes kleines Plugin schreiben. Denkanstoß könnte dir sowas hier geben: https://gist.github.com/lgedeon/bafe38…e2c36/revisions


    Das wäre ideal, wenn ich das Script mit einem Cronjob z. B. wöchentlich aufrufen könnte. Leider ist der Code veraltet und ich finde die Lösung nicht:

    Code
    Notice: wpdb::prepare wurde fehlerhaft aufgerufen. Der Abfrage-Parameter wpdb::prepare() benötigt einen Platzhalter.

    Ich benutze NinjaFirewall (WP Edition). Mit dem Comment Blacklist Manager werden die erkannten Spams ausgefiltert und als Spam deklariert. Dazu verwende ich eine eigene Blacklist, welche wie hier beschrieben auf GitHub gehostet wird. Sie fängt wie erwähnt viele Spams ab und wird regelmäßig ergänzt. Das Code-Beispiel für Akismet funktioniert erwartungsgemäß nicht bei mir. M. E. ist der Löschvorgang der Spams nicht von einem Plugin abhängig, da ich z. B. auch manuell Kommentare nach Spam verschieben kann. Es sollte also mit Bordmitteln funktionieren.

    Hallo,

    gibt es eine Möglichkeit, Spams automatisch oder nach Alter zu löschen? Ich benutze eine eigene Kommentar-Blacklist, welche mir vielen Müll abfängt und als Spam bei den Kommentaren kennzeichnet. Mein hartnäckiger Freund "Eric" ist auch fast jeden Tag dabei. Diese Spam-Kommentare werden dann gleich in Spam verschoben und nicht mehr per E-Mail angezeigt. AntiSpam Bee verwende ich nicht, sondern ein anderes Tool.
    Hat jemand eine Idee oder einen Ansatz, um diese blöden Spams regelmäßig zu löschen?
    Die SuFu im Forum und in Google brachte bisher keine brauchbaren Ergebnisse.
    Vielen Dank für eure Hilfe.

    Ungeachtet der Sinnhaftigkeit des ganzen Vorhabens:

    • Das $ Zeichen im Suchen-/Ersetzenstring muss bei der Nutzung von doppelten Anführungszeichen escaped werden.
    • Was steht in Zeile 34 der angegeben Datei?

    Super!!!
    Das war die Lösung. Ganz herzlichen Dank dafür. Ich habe mit Hochkommas und Klammern probiert, aber nichts hat funktioniert.

    Inhalt der Zeile 34:
    $file_contents = str_replace("<?php echo esc_attr( \$option['label'] ); ?>","<?php echo html_entity_decode( \$option['label'] ); ?>",$file_contents);
    (Die Backslashes sind schon drin; im Original fehlten sie natürlich)

    Zur "Sinnhaftigkeit":
    Hier ein Forenbeitrag zum Plugin "HappyForms":
    https://wordpress.org/support/topic/…/#post-14090448

    Um in einem Formular die Privacy Police mit Link einzustellen ist die im Forenbeitrag beschriebene Datei zu bearbeiten. Da ich diese Sache auch für andere, eher unkundige Admins beschreibe, wollte ich die Dateibearbeitung vermeiden. Deshalb ist alles in einem Script drin.
    Im Ergebnis sieht es dann so aus wie bei meinem Kontaktformular ganz unten (Zustimmung):
    https://web266.de/kontakt/

    Hallo zusammen,
    ich habe folgendes Problem, wo ich nicht weiterkomme:
    In einer Plugin-Datei soll der String

    PHP
    <?php echo esc_attr( $option['label'] ); ?>


    durch diesen String

    PHP
    <?php echo html_entity_decode( $option['label'] ); ?>


    ersetzt werden. Das Script kommt in die functions.php oder ein Snippet-Plugin rein.

    Dieses Muster habe ich gefunden

    PHP
    $path_to_file = 'path/to/the/file';
    $file_contents = file_get_contents($path_to_file);
    $file_contents = str_replace("\nH",",H",$file_contents);
    file_put_contents($path_to_file,$file_contents);


    und so angepasst:

    PHP
    $path_to_file = WP_PLUGIN_DIR . '/happyforms/core/templates/parts/frontend-checkbox.php';
    $file_contents = file_get_contents($path_to_file);
    $file_contents = str_replace("<?php echo esc_attr( $option['label'] ); ?>","<?php echo html_entity_decode( $option['label'] ); ?>",$file_contents);
    file_put_contents($path_to_file,$file_contents);

    Es kommt folgende Fehlermeldung:
    Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\LWS\laragon\www\HappyForms\wp-content\plugins\wp-h-snippets\wphs.php on line 34

    Jetzt komme ich nicht weiter und bitte um einen guten Tipp.
    Die Variable "$option['label']" ist vermutlich noch leer.
    Vielen Dank!

    Siehe dort Search Appearance > Redirect Attachment URLs > Attachment Parent ...


    Leider geht das nur in der Pro-Version (siehe Bild)
    Wenn unterschiedliche SEO-Tools verwendet werden, ist die Einstellung jeweils an anderer Stelle bzw. nur in der Kaufversion möglich.
    Als Alternative habe ich das Plugin "Disable Comments" getestet und für gut befunden. Mit der Auswahl von "Medien" (siehe Bild) ist mein Problem mit dem Spam über Beitragsbilder gelöst. Dieses Plugin habe ich auf mehreren Websites getestet und es gab keine Fehlermeldungen o. ä. Ich werde es dann verwenden und die Übersetzung noch ein wenig ergänzen. Siehst du ein grundlegendes Problem bei der Verwendung dieses Plugins?

    Hallo zusammen,

    innerhalb von 3 Tagen habe ich bei einer Kundensite Spam über das jeweilige Beitragsbild bekommen. Das erstaunliche ist, dass die Kommentar-Funktion nicht aktiviert und somit auf der Seite auch kein Formular sichtbar ist. Der Spammer hängt den Namen des Bildes in der URL hinten an - und schon wird das Kommentar-Formular angezeigt. Es handelt sich offenbar um manuell eingetragenen Spam.
    Der Inhalt der beiden Spam-Kommentare ist im angehängten Bild sichtbar.
    Frage:
    Hat das schon jemand beobachtet, dass über ein Beitragsbild Spam reinkommt und wie kann man das ggf. verhindern?

    Hallo mensmaximus,
    dein Vorschlag hat leider nicht funktioniert, mich aber auf die richtige Spur gebracht: Mit der Funktion "wp_trim_words" konnte ich den gewünschten Textauszug erstellen. Mit excerpt klappt das leider nicht. Dann noch eine Zeile für "Weiterlesen" eingebaut und fertig ist das Script. Ich werde es später in ein Plugin einbauen, so dass es mehrere Möglichkeiten der Verwendung gibt:
    - Ein spezielles Plugin
    - Einfügen in ein Snippet-PLugin
    - Einfügen in die functions.php
    Hier der fertige Code:

    Im Block "foreach" sind alle relevanten Änderungen drin. Vielleicht könnt ihr noch einen fachlichen Blick darauf werfen. Vielen Dank für alle Unterstützung! Ich habe zwar etliche Kenntnisse in PHP usw, aber manchmal kommt man ohne Hilfe nicht weiter. Ein Screenshot zeigt als Beispiel drei Beiträge, wobei die Begrenzung auf 55 Wörter gut zu sehen ist.
    Wenn das Plugin fertig ist, werde ich es hier verlinken.

    Der Beitragstext ist nun auch drin. Wie bekomme ich ihn als Textauszug hin?