Über den Autor

Robert Basic

Robert Basic ist Namensgeber und Gründer von BASIC thinking und hat die Seite 2009 abgegeben. Von 2004 bis 2009 hat er über 12.000 Artikel hier veröffentlicht.

23 Kommentare

  • wenn ich also hier:
    add_action(‚publish_post‘, ‚autoclose_comments‘, 7);
    add_action(‚edit_post‘, ‚autoclose_comments‘, 7);
    add_action(‚delete_post‘, ‚autoclose_comments‘, 7);
    add_action(‚comment_post‘, ‚autoclose_comments‘, 7);
    add_action(‚trackback_post‘, ‚autoclose_comments‘, 7);
    add_action(‚pingback_post‘, ‚autoclose_comments‘, 7);
    add_action(‚edit_comment‘, ‚autoclose_comments‘, 7);
    add_action(‚delete_comment‘, ‚autoclose_comments‘, 7);
    add_action(‚template_save‘, ‚autoclose_comments‘, 7);

    bei Pingback und Trackback zB 100 eintrage, bei allen anderen nichts (wie trage ich nichts ein? egal, mach halt 9999 rein), müsste es gehen?

  • Nein, die add_actions sind nur die „hooks“, bei denen das Plugin eingehängt wird. Also z.B. immer, wenn Du einen neuen Beitrag veröffentlichst (publish_post), wird das Plugin aufgerufen.

    Ich maile Dir mal eine Version, die nur den Ping-Status verändert (keine Garantie, dass es läuft 🙂

  • So Robert, die Mail mit dem gezippten Plugin an Deine gamil-Adresse ist raus. Das Plugin wird beim ersten Mal wohl relativ lange brauchen…
    Es wird immer dann aufgerufen, wenn Du einen Artikel veröffentlichst oder änderst. Die anderen Hooks habe ich deaktiviert. Viel Freude, PC’L
    Edit: Hab noch was vergessen: es wird nur der Ping-/Trackback-Status auf ‚closed‘ gesetzt, die normalen Kommentare bleiben offen.

  • dankesehr:)) Bin btw gespannt, ob ich damit erneut in diese Zeitüberlaufthematik laufe, an der viele Plugins scheitern. Am WE gibts dann nen PHP Update, hoffentlich hilft es.

    *verbeug*

  • In dem oben genannten Plugin sollte es reichen, wenn du db-Update mit dem tabellenfeld ping-status übernimmst, also statt comment-status nimmst ping-status. Denn die werte werden auch in der $tableposts hinterlegt.

  • wg. Zeitüberlaufthematik:
    Du kannst ja den ersten Run mit mysqladmin machen:

    UPDATE wp_posts
    SET ping_status = 'closed'
    WHERE ping_status = 'open'
    AND ID < 1000

    wp_posts: evtl. Table-Prefix berücksichtigen.
    ID: einen Artikel suchen, der gerade 21 Tage alt ist und dann dessen ID nehmen.

  • Ehm … bin ich der einzige, der so ein Vorgehen für semioptimal hält? Ihr verändert hier die Datenbank. Einfacher und auch nachträglich wieder rückgängig machbar wäre es bei jedem Seitenaufruf das Alter zu prüfen und entsprechend den Status zu verändern.

    Ich verwende auf meinem Blog dazu das Plugin Comment Timeout. Das ist nicht-invasiv und hält den ganzen Spam zu älteren Artikeln auf.

  • Hallo Robert,
    hoffe, dass die Lösung(Siehe TB-Kommentar 9 und 11) ohne Konfigbereich im backend auskommt, ansonsten müsste man wieder eine Seite mit entsprechenden Feldern kreieren.
    LG Frank

  • Wofür soll denn so ein Plugin gut sein? Will sich Robert Basic die Arbeit erleichtern, weil er unter älteren Trashbacks nur Spam vermutet?

    Ich setze auch ab und zu Links auf ältere Artikel (auch zu Robert Basic) und freue mich über einen Trashback, der ja auch sinngemäß ist. Manchmal können so auch ältere Diskussionen wieder angefeuert werden…

    Generell finde ich, daß auf Blogs dem Neuen viel zu sehr Raum gegeben wird. Das ist natürlich bei Blogs, die 15 News am Tag posten und fast schon RSS-Aggregatoren sind, per se so.

    Aber mal ehrlich: anstatt sofort loszuprogrammieren und so ein Plugin zu bauen oder entsprechendes zu suchen, sollte man sich lieber mal überlegen, ob die Struktur, in der Blogs Inhalte verarbeiten, richtig ist.

    Daher mein Vorschlag: wenn ihr Euch schon Gedanken macht, dann doch darüber wie die alten Beiträge sinnvoll zugänglich gemacht werden können. Die Kategorien von WordPress sind da einfach zu unflexibel. Ich würde mir Channels wünschen (ähnlich wie etwa bei TYPO3, mit dem ich auch arbeite).

  • Vielleicht um den Datenstand klein zu halten, bei den vielen Einträgen, die Robert am Tag postet will er sicher nicht um „alte“ beiträge kümmern. Der Ansatz war ja für die Kommentare ebenso gedacht. Kenne das Thema, manchmal kommen Anfragen per Kommentar oder Trackback, wo der Artikel ein Jahr oder mehr zurpck liegt und nicht immer will man sich mnit dem thema nochmal auseinandersetzen, und so läuft das Schließen automatisch.

    Das Plugin gibt es – LINK

  • der TB SPAM macht zZt rund 99% aus (der andere bleibt momentan wg Math Antispam Tool außen vor). Und er betrift idR alte Artikel. Setze ich also je nach Zeitraum in 50% der Artikel TB/PB auf off, spart mir das 50% Spameinträge, die die DB belasten und zwingt mich auch nicht dazu, immer wieder massiv viele Mails abzuarbeiten, die beim Spammen durch TBs entstehen.

    Das Thema mit der Struktur ist btw klasse.. mehr später
    wg/ den Backlinks, die man damit möglicherweise in einzelfällen blockt, mache ich mir als „Linkschleuder“ überhaupt keinen Kopp. Zumal das auch wirklich kein gutes Argument ist, wenn es jemandem darum geht bei dieser Story…

  • Ich bin auch kein Freund davon, generell Trackbacks auf alte Artikel zu unterbinden. Ich verlinke auch hin und wieder ältere Sachen.

    Und du, Robert, tust das auch. Insbesondere greifst du früher schon mal angeschnittene Themen nochmal auf (z.B. Wie wird das eigene Blog bekannt?).

    Wenn du also so ein Tool einsetzt, guck dass wenigstens Trackbacks von deiner eigenen Domain durchgelassen werden. Alleine schon, um die Leute, die bei dem alten Beitrag mitdiskutiert haben, zu benachrichtigen, dass es was neues zu dem Thema gibt.

    Apropos, wann geht denn endlich deine E-Mail-Benachrichtigung wieder? Das wär mal ein wichtiger Punkt (finde ich).

  • @Oliver (Kommentar 15)
    Im Prinzip ja: das Plugin ist auch für andere verfügbar. Man muss wissen, dass in der WordPress-Datenbank in der Tabelle wp_posts das Feld ping_status bei allen Posts verändert wird, die älter als 21 Tage sind. Will man das später wieder rückgängig machen, muss man Tools wie z.B. phpmyadmin benutzen.

    Eine Alternative wurde hier schon genannt: Das Plugin Comment Timeout ändert nicht die Datenbank, dafür sperrt es Pings UND Kommentare gleichermaßen.

    Downloadlink meiner Version: auto-close-pings.zip. Bitte als Benutzernamen „gast“ eingeben, das Passwort leer lassen.

Kommentieren