Yadgar: do_action

High!

Da es möglicherweise kein geeignetes WordPress-Plugin für mein Problem (Teaser aus RSS-Feeds extrahieren und dann sortiert nach Datum auf die Titelseite stellen) gibt, habe ich mich auf den langen und steinigen Weg (hach, wie afghanisch!) des SELF-Programmings begeben... das heißt jetzt erst einmal, sämtliche beteiligten PHP-Skripts Zeile für Zeile durchzugehen, um überhaupt ihre Funktionalitäten verstehen zu können.

Und da bin ich in rss.php (für den Fall, dass der eine oder andere WordPress-Crack hier mitliest) gleich am Anfang auf eine Funktion gestoßen, die weder im Skript selbst definiert noch irgendwie inkludiert wurde: do_action('load_feed_engine') - weder mein PHP-Lehrbuch (McCarty) noch das PHP-Onlinehandbuch wissen irgendwas von dieser Funktion!

Wie komme ich hier weiter? Was macht do_action grundsätzlich und speziell hier?

Bis bald im Khyberspace!

Yadgar

  1. Moin!

    Wie komme ich hier weiter? Was macht do_action grundsätzlich und speziell hier?

    Die Funktion ist irgendwo selbst definiert im Programmcode. Suche und finde sie. Dann weißt du, was sie macht.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
  2. echo $begrüßung;

    Und da bin ich [...] auf eine Funktion gestoßen, die weder im Skript selbst definiert noch irgendwie inkludiert wurde: do_action('load_feed_engine')

    Wenn das so ist, ergibt das beim Aufrufen einen Fehler, denn eine solche Funktion gehört nicht zu PHP. Google findet zu php do_action auf den ersten Blick nur WordPress-Themen.

    echo "$verabschiedung $name";

  3. Moin,

    Und da bin ich in rss.php (für den Fall, dass der eine oder andere WordPress-Crack hier mitliest) gleich am Anfang auf eine Funktion gestoßen, die weder im Skript selbst definiert noch irgendwie inkludiert wurde: do_action('load_feed_engine') - weder mein PHP-Lehrbuch (McCarty) noch das PHP-Onlinehandbuch wissen irgendwas von dieser Funktion!

    Ein einfaches grep -d recurse "function do_action" bei meiner Wordpress-Testinstallation ergab, das diese Funktion in der Datei wp-includes/plugin.php definiert ist.

    Vermutlich wird diese Datei bereits eingebunden, bevor die rss.php eingebunden wird, und die rss.php verlässt sich darauf, dass die Datei eingebunden ist.

    In solchen Fällen ist grep immer sehr hilfreich.

    Gruß

    Stareagle