WP_Rewrite::add_rewrite_tag( string $tag, string $regex, string $query )

Adds or updates existing rewrite tags (e.g. %postname%).


Description

If the tag already exists, replace the existing pattern and query for that tag, otherwise add the new tag.

See also

  • WP_Rewrite::$rewritecode

  • WP_Rewrite::$rewritereplace

  • WP_Rewrite::$queryreplace


Parameters

$tag

(string) (Required) Name of the rewrite tag to add or update.

$regex

(string) (Required) Regular expression to substitute the tag for in rewrite rules.

$query

(string) (Required) String to append to the rewritten query. Must end in '='.


Source

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

	public function add_rewrite_tag( $tag, $regex, $query ) {
		$position = array_search( $tag, $this->rewritecode );
		if ( false !== $position && null !== $position ) {
			$this->rewritereplace[ $position ] = $regex;
			$this->queryreplace[ $position ] = $query;
		} else {
			$this->rewritecode[] = $tag;
			$this->rewritereplace[] = $regex;
			$this->queryreplace[] = $query;
		}
	}


Changelog

Changelog
Version Description
WP-1.5.0 Introduced.