Was genau macht die ep-Maske in der Register-Taxonomie-Funktion von WordPress?

Lesezeit: 3 Minuten

Benutzeravatar von Mohamed Omar
Mohammed Omar

Ich registriere eine benutzerdefinierte Taxonomie für mein Blog mit der Funktion register_taxonomy, die ein Argument hat rewrite

um die URLs mit einigen Parametern umzuschreiben

einer von ihnen ist ep_mask . WordPress behauptet, dass es verwendet werden sollte, wenn Sie einen Endpunkt für die Taxonomie-URL hinzufügen möchten. Ich verstehe einfach nicht, warum ich einen Endpunkt hinzufügen soll und welchen Nutzen er hat. Bitte, wenn ein Beispiel mit einem Ergebnis verfügbar ist, wird es besser sein.

Danke im Voraus

Der Endpunktmaskenwert wird verwendet, um WordPress mitzuteilen, welche Art von Endpunkterweiterungen ein bestimmtes registriertes Element unterstützt und zu denen ein Entwickler Endpunkte hinzufügen kann add_rewrite_endpoint().

Standardmäßig bieten Taxonomien (soweit ich weiß) keine an ep_mask (standardmäßig auf EP_NONE), aber für benutzerdefinierte Taxonomien könnten Sie eine benutzerdefinierte EP-Maske oder eine der integrierten (z EP_PAGES), damit die Permalink-Struktur ähnlich wie etwas anderes funktioniert.

Angenommen, Sie stellen die ein ep_mask Wert zu EP_PERMALINK | EP_PAGESkönnen Sie dann mit einen neuen Endpunkt registrieren

add_rewrite_endpoint('json', EP_PERMALINK | EP_PAGES);

Was es Ihnen wiederum ermöglichen würde, Ihre Taxonomie-URLs mit anzuhängen json und der Wert json wäre als Abfragevariable in verfügbar $wp_query. Dann können Sie den Wert als Überprüfung verwenden, um die Abfrage, Vorlagen und andere verwandte Dinge zu ändern, wenn die Seite geladen wird.

Hier können Sie mehr über Endpunkte lesen: https://make.wordpress.org/plugins/2012/06/07/rewrite-endpoints-api/ (Ein bisschen alt, sollte aber immer noch widerspiegeln, wie der Kern mit Endpunkten arbeitet.)

  • Ich verstehe die Aussage ein bisschen, aber ich kann mir nicht vorstellen, was genau passiert, wenn ich zum Beispiel das EP_DATE mit meiner registrierten Taxonomie verwendet habe? . Bitte ich brauche ein Beispiel mit einem Vorher-Nachher-Ergebnis, wenn Sie können

    – Mohammed Omar

    6. September 2016 um 20:37 Uhr

  • EP_DATE, EP_PAGES usw. sind Konstanten, die sich auf ganzzahlige Werte beziehen. Vor dem Anwenden der EP-Maske funktionieren Ihre Steuer-URLs normal, aber das Hinzufügen einer Abfragevariablen (z json) führt zu einem 404 (da WP nicht weiß, was es mit dieser URL-Struktur tun soll), aber nach dem Hinzufügen der EP-Maske können Sie den Endpunkt zuordnen und WP wird keine Fehler für zusätzliche Dinge in der URL ausgeben. Wenn du benutzt EP_DATE, wären alle für diese EP-Maske registrierten Endpunkte in den Taxonomie-URL-Strukturen verfügbar. Ich werde versuchen, bald ein besseres Beispiel zu schreiben, wenn ich Zeit habe.

    – ojrask

    7. September 2016 um 7:51 Uhr

  • Aber wenn ich den json hinzugefügt habe, sollten jetzt beide Links wie www.example.com/custom-taxonomy/ und www.example.com/custom-taxonomy/json/ verfügbar sein, und beide werden ohne Probleme funktionieren

    – Mohammed Omar

    7. September 2016 um 8:47 Uhr

  • Ja, beide würden wie einander funktionieren. Aber mit dem json Version können Sie bei Bedarf einige Änderungen im Plugin- oder Themencode vornehmen.

    – ojrask

    9. September 2016 um 11:28 Uhr

  • add_rewrite_endpointnicht add_rewrite_rule. Ansonsten sollte es so funktionieren, ja. 🙂

    – ojrask

    12. September 2016 um 9:59 Uhr

Der Vorteil ist, dass Sie den Endpunkt mit hübschen Permalinks verwenden können.

Wenn Sie EP_MASK nicht angeben, funktionieren hübsche Permalinks nicht

Das Beschreibung von ep_mask in der Dokumentation von register_taxonomy() enthält ein Link zu einem Artikel das erklärt es ausführlich.

Ein Zitat aus diesem Artikel:

Wenn wir unseren Endpunkt allen Post-Permalinks hinzufügen wollten, die wir verwenden würden EP_PERMALINK. Sowohl für Beiträge als auch für Seiten: EP_PERMALINK | EP_PAGES. Für Beiträge, Seiten und Kategorien: EP_PERMALINK | EP_PAGES | EP_CATEGORIES.

Es gibt konkrete Beispiele in diesem Artikel:
https://make.wordpress.org/plugins/2012/06/07/rewrite-endpoints-api/

1386680cookie-checkWas genau macht die ep-Maske in der Register-Taxonomie-Funktion von WordPress?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy