WP_Rewrite::add_endpoint()publicWP 2.1.0

Adds an endpoint, like /trackback/.

Method of the class: WP_Rewrite{}

No Hooks.

Return

null. Nothing (null).

Usage

global $wp_rewrite;
$wp_rewrite->add_endpoint( $name, $places, $query_var );
$name(string) (required)
Name of the endpoint.
$places(int) (required)
Endpoint mask describing the places the endpoint should be added. Accepts a mask of:
  • EP_ALL
  • EP_NONE
  • EP_ALL_ARCHIVES
  • EP_ATTACHMENT
  • EP_AUTHORS
  • EP_CATEGORIES
  • EP_COMMENTS
  • EP_DATE
  • EP_DAY
  • EP_MONTH
  • EP_PAGES
  • EP_PERMALINK
  • EP_ROOT
  • EP_SEARCH
  • EP_TAGS
  • EP_YEAR
$query_var(string|true|false)
Name of the corresponding query variable. Pass false to skip registering a query_var for this endpoint.
Default: value of $name

Notes

Changelog

Since 2.1.0 Introduced.
Since 3.9.0 $query_var parameter added.
Since 4.3.0 Added support for skipping query var registration by passing false to $query_var.

WP_Rewrite::add_endpoint() code WP 6.5.2

public function add_endpoint( $name, $places, $query_var = true ) {
	global $wp;

	// For backward compatibility, if null has explicitly been passed as `$query_var`, assume `true`.
	if ( true === $query_var || null === $query_var ) {
		$query_var = $name;
	}
	$this->endpoints[] = array( $places, $name, $query_var );

	if ( $query_var ) {
		$wp->add_query_var( $query_var );
	}
}