Wenn Sie einen benutzerdefinierten REST-Endpunkt hinzufügen, wo setzen Sie die Endpunktfunktion und wo setzen Sie den functionsregistrierungsaufruf?

WordPress-Dokumentation, Blogger und StackExchange-Beantworter haben den Code, den Sie schreiben, um einen benutzerdefinierten REST-Endpunkt zu erstellen, hervorragend beschrieben, aber ich kann keine Dokumentation finden, die genau beschreibt, wo Sie den Code platzieren.

Angenommen, ich habe einen Endpunkt, an den ich die Zeichenfolge “foo” zurücksenden möchte. Nach meiner Lektüre implementiere ich eine function wie folgt:

function my_foo() { return "foo"; } 

und ich registriere die function mit einem Anruf wie folgt:

 add_action( 'rest_api_init', function () { register_rest_route( 'mycompany/v1', '/foo/', array( 'methods' => 'GET', 'callback' => 'my_foo' ) ); } ) 

Es gibt nichts Schwieriges daran, aber für das Leben von mir kann ich nicht herausfinden, wo ich diese hinstellen soll.

Für den REST-Endpunkt nehme ich an, dass ich die function in eine Datei einfügen würde:

 wp-json/mycompany/v1/foo.php 

aber es wäre schön, das sicher zu wissen.

Was den Aufruf von add_action() , habe ich auch eine add_action() Zeit, um herauszufinden, wohin der Anruf geht.

Die Dokumentation hier beschreibt nicht, wo diese Anrufe leben sollten, ebenso wie der Artikel hier (und viele andere Quellen, die ich gefunden habe).

Wenn jemand darauf hinweisen könnte, wo diese Orte dokumentiert sind, oder dass mir etwas direkt fehlt, wäre das großartig!

Solutions Collecting From Web of "Wenn Sie einen benutzerdefinierten REST-Endpunkt hinzufügen, wo setzen Sie die Endpunktfunktion und wo setzen Sie den functionsregistrierungsaufruf?"

Wenn Sie ein Thema entwickeln, ist der richtige Ort, um Ihren Code in diesem Fall in der Datei functions.php Ihres Themas zu platzieren. Dies ist die Datei, die sicher ausgeführt wird, wenn auf Ihre Website zugegriffen wird.

Wenn Sie ein Plugin entwickeln, können Sie Ihren Code in eine PHP-Datei (wie foo.php ) foo.php und sie dann in Ihre Vorlage foo.php / foo.php , je nachdem, was Sie benötigen.

Speichern oder ändern Sie keine Datei außerhalb des Ordners wp-content oder Ihrer Plugins. Diese werden von WordPress-Updates außer Kraft gesetzt und haben die Chance, von einigen Anti-Malware-Plugins / Server-Apps als Malware erkannt zu werden.

Sie können Ihren Code sogar direkt in die coredatei Ihres Plugins setzen, aber ich bevorzuge es, die functionen zu kategorisieren, falls ich später darauf zugreifen oder sie ändern muss (persönliche Meinung).