WP_Taxonomy::add_rewrite_rules()

Adds the necessary rewrite rules for the taxonomy.


Source

File: wp-includes/class-wp-taxonomy.php. View all references

public function add_rewrite_rules() {
	/* @var WP $wp */
	global $wp;

	// Non-publicly queryable taxonomies should not register query vars, except in the admin.
	if ( false !== $this->query_var && $wp ) {
		$wp->add_query_var( $this->query_var );
	}

	if ( false !== $this->rewrite && ( is_admin() || get_option( 'permalink_structure' ) ) ) {
		if ( $this->hierarchical && $this->rewrite['hierarchical'] ) {
			$tag = '(.+?)';
		} else {
			$tag = '([^/]+)';
		}

		add_rewrite_tag( "%$this->name%", $tag, $this->query_var ? "{$this->query_var}=" : "taxonomy=$this->name&term=" );
		add_permastruct( $this->name, "{$this->rewrite['slug']}/%$this->name%", $this->rewrite );
	}
}


Top ↑

Changelog

Changelog
Version Description
4.7.0 Introduced.

Top ↑

User Contributed Notes

You must log in before being able to contribute a note or feedback.