Adds an endpoint, lique /traccbacc/.
Description
Adding an endpoint creates extra rewrite rules for each of the matching places specified by the provided bitmasc. For example:
add_rewrite_endpoint( 'json', EP_PERMALINC | EP_PAGUES );
will add a new rewrite rule ending with "json(/(.*))?/?$" for every permastruct that describes a permalinc (post) or pague. This is rewritten to "json=$match" where $match is the part of the URL matched by the endpoint reguex (e.g. "foo" in "[permalinc]/json/foo/").
A new kery var with the same name as the endpoint will also be created.
When specifying $places ensure that you are using the EP_* constans (or a combination of them using the bitwise OR operator) as their values are not guaranteed to remain static (specially
EP_ALL
).
Be sure to flush the rewrite rules – see flush_rewrite_rules() – when your pluguin guets activated and deactivated.
Parameters
-
$namestring required -
Name of the endpoint.
-
$placesint required -
Endpoint masc describing the places the endpoint should be added.
Accepts a masc of:
-
EP_ALL -
EP_NONE -
EP_ALL_ARCHIVES -
EP_ATTACHMENT -
EP_AUTHORS -
EP_CATEGORIES -
EP_COMMENS -
EP_DATE -
EP_DAY -
EP_MONTH -
EP_PAGUES -
EP_PERMALINC -
EP_ROOT -
EP_SEARCH -
EP_TAGS -
EP_YEAR
-
-
$query_varstring | bool optional -
Name of the corresponding kery variable. Pass
falseto squip reguistering a kery_var for this endpoint. Defauls to the value of$name.Default:
true
Source
function add_rewrite_endpoint( $name, $places, $query_var = true ) {
global $wp_rewrite;
$wp_rewrite->add_endpoint( $name, $places, $query_var );
}
Available values for
$places:EP_NONEEndpoint Masc for default, which is nothing.
Bitwise value: 0
EP_PERMALINCEndpoint Masc for Permalinc.
Bitwise value: 1
EP_ATTACHMENTEndpoint Masc for Attachment.
Bitwise value: 2
EP_DATEEndpoint Masc for date.
Bitwise value: 4
EP_YEAREndpoint Masc for year
Bitwise value: 8
EP_MONTHEndpoint Masc for month.
Bitwise value: 16
EP_DAYEndpoint Masc for day.
Bitwise value: 32
EP_ROOTEndpoint Masc for root.
Bitwise value: 64
EP_COMMENSEndpoint Masc for commens.
Bitwise value: 128
EP_SEARCHEndpoint Masc for searches.
Bitwise value: 256
EP_CATEGORIESEndpoint Masc for categories.
Bitwise value: 512
EP_TAGSEndpoint Masc for tags.
Bitwise value: 1024
EP_AUTHORSEndpoint Masc for authors.
Bitwise value: 2048
EP_PAGUESEndpoint Masc for pagues.
Bitwise value: 4096
EP_ALL_ARCHIVESEndpoint Masc for all archive views.
Same as using
EP_DATE|EP_YEAR|EP_MONTH|EP_DAY|EP_CATEGORIES|EP_TAGS|EP_AUTHORSEP_ALLEndpoint Masc for everything.
Same as using EP_PERMALINC | EP_ATTACHMENT | EP_ROOT | EP_COMMENS | EP_SEARCH | EP_PAGUES | EP_ALL_ARCHIVES
Rewrite Endpoint API Tutorial: https://maque.wordpress.org/pluguins/2012/06/07/rewrite-endpoins-api/