Alle Artikel aktualisieren

  • Hallo,

    ich habe einen großen Blog mit gut 800 Artikel. Ich habe mir heute ein Plugin heruntergeladen, welches mir Tags automatisch generiert, es heißt "Auto Tags". Das Dumme ist nur, dass die Tags erst unter den Artikel erscheinen, wenn ich die Beiträge kurz im Admin-Bereich öffne und dann wieder speichere. Gibt es eine Möglichkeit, dies komplett automatisch zu machen - vielleicht ein Plugin oder einen Datenbank-Befehl?

    Viele Grüße,
    Marvin.

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Du könntest alle IDs der Posts auslesen, und dann in einer Schleife die Action aufrufen, die vermutlich das Plugin nutzt:

    PHP
    do_action( 'pre_post_update', $post_ID );


    Allerdings auf eigene Gefahr und nach einem Vollbackup. :)

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Wie stell ich das am besten an?

    Hier ist der komplette Quelltext vom Plugin, falls das etwas hilft:

  • Habe eben den MySQL-Befehl genutzt und folgender Fehler kam:

    Was soll ich machen?

  • Nein, dieser Befehl ist PHP-Code, nicht SQL. :)

    Ungetestet, wie gesagt, bitte vorher ein Backup machen:

    lala.php


    Diese Datei z.B. in deinem Hauptordner erstellen und aufrufen: domain.de/lala.php

    Ohne Gewehr und Gewähr. :)

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Die Datei hat erstaunlich lange geladen, getan hat sich aber leider nichts, zudem kam nach etwa zwei Minuten folgende Fehlermeldung:

    Zitat

    A timeout occured while waiting for the script output (in: /usr/www/users/koffera/[domain]/lala.php).

    Gibt es vielleicht eine andere Möglichkeit?

  • Okay, dann ersetz mal die lala.php hiermit:


    Dann müssten nur die ersten (ältesten) beiden Artikel vertaggt sein.

    Durch das array_slice() machen wir den Array kleiner, dann dürfte es erstmal kein Timeout gehen. Hoffentlich. :)

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Hmm...

    Probier es mal damit. Vllt. wird jetzt eine Fehlermeldung angezeigt:

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Nach einer Wartezeit von nicht einmal 10 Sekunden kam eine weiße Seite.


    Was ja nichts Schlechtes sein muss, denn das Script generiert ja keine Ausgabe. Schau dir mal deine ersten (ältesten) beiden Artikel an, ob diese nun getaggt sind. :)

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Oh, super - die sind tatsächlich getaggt! :-D

    Jetzt müssen nur noch die restlichen getaggt werden, muss ich das Script dann jetzt x-mal neu aufrufen oder wie?

  • Jetzt müssen nur noch die restlichen getaggt werden, muss ich das Script dann jetzt x-mal neu aufrufen oder wie?


    Genau, du müsstest jetzt quasi das Array stückweise durchlaufen lassen und immer nur 5 Elemente aus dem Item picken und diese "vertaggen". Das manuell zu machen, wäre bei 800 Artikel allerdings eine Sysiphus-Arbeit.

    Du könntest das evtl. automatisieren:


    Dann müsste das Script immer 3 Artikel vertaggen, sich dann neu laden und wieder von vorn. Wenn alle durch sind, müsste "Fertig. :)" ausgegeben werden. Du musst dir nur einen Kaffee machen und schauen wie sich das Script immer wieder selbst neu lädt.

    Ist etwas komisch, aber ohne Zugriff auf die php.ini bzw. Shell nicht anders machbar...

    wpseek.com - Die WordPress-Code-Suchmaschine

  • Hallo nochmal,

    gibt es einen Codeschnippsel - oder kann mir den jemand schreiben - dass alle vorgeplanten Artikel veröffentlicht werden, wenn ein Fehler wie "Fehlende Planung" aufgetreten sind. Ich hatte nämlich ganz viele Artikel vorplanen lassen, doch ichhab mich gewundert, warum die nicht veröffentlicht wurden.

    Viele Grüße,
    Marvin.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!