WP_Rewrite::add_endpoint( string $name, int $places, string|bool $query_var = true )

Adds an endpoint, like /trackback/.

Description

See also

Parameters

$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|bool) (Optional) Name of the corresponding query variable. Pass false to skip registering a query_var for this endpoint. Defaults to the value of $name.

Default value: true

Source

File: wp-includes/class-wp-rewrite.php

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 );
		}
	}

Changelog

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

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_rewrite/add_endpoint