Ich bin im Begriff, mein erstes WordPress-Projekt zu starten, und ich habe die Aufgabe, angepassten Kerncode, der den Kern überschreibt, in separate Funktionen / Dateien zu verschieben (auf diese Weise ist die Wartung bei zukünftigen Upgrades einfacher.
Ich habe recherchiert und es sieht aus wie add_filterund apply_filterund do_actionund add_actionscheint der richtige Weg zu sein. Ich bin mir immer noch nicht sicher, wie sie funktionieren. Verwenden Sie diese Methoden, um Kernmethoden zu überschreiben? Ich bin verwirrt, weil ich add_filterdas Wort benutze, addwenn ich das Gefühl habe, dass es eher im Sinne von replaceoder ist overwrite(es sei denn, ich verstehe das falsch).
Ich habe gerade gelesen , die erste Antwort auf diese (die über die Tacos)
Der Autor hat also drei Schritte ausgeführt, um die Verwendung von add_filter zu beschreiben:
Schritt 1: Ein statischer Wert für die Variable $ taco
<?php $taco = 'chicken'; ?>
Schritt 2:
<?php
$taco = apply_filters( 'get_taco', 'chicken' );
?>
Schritt 3:
<?php
add_filter( 'get_taco', 'my_special_order' );
function my_special_order( $content ) {
return 'shredded beef';
}
?>
In dieser Situation wird also apply_filternur eine dynamische Methode im laufenden Betrieb erstellt und die chickenZeichenfolge zurückgegeben? Oder wird hier davon ausgegangen, dass es eine Kernmethode von WordPress gibt get_tacound dass die Verwendung apply_filterdazu beitragen würde, die ursprüngliche Funktionalität zu überschreiben?
Kannst du auch nur apply_filteretwas, das du bearbeitet hast add_filter? Mit anderen Worten, würde es apply_filter('get_taco');nicht funktionieren, wenn ich add_filter('get_taco', 'my_special_order');UND nicht zuerst definieren würde function my_special_order ($content) ...?
Füge ich diese Filter in meine Datei functions.php ein? Es tut mir leid, dass ich Sie mit Fragen bombardiert habe. Ich komme von Ruby on Rails, daher bin ich in WordPress völlig ahnungslos.