do_action( 'template_redirect' )

Fires before determining which template to load.

Description Description

Source Source

File: wp-includes/template-loader.php

View on Trac

Top ↑

Changelog Changelog

Version Description
1.5.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

  1. Skip to note 1 content
    Contributed by Andrew Lima

    If you need to remove a template_redirect from within a custom plugin, simply using remove_action( 'template_redirect', 'function_to_remove' ); won’t cut it.

    As a workaround, what you can do is create a function to hook into template_redirect action earlier and then remove the redirect you are trying to remove.

    // remove a template redirect from within a custom plugin.
    add_action( 'template_redirect', 'remove_my_action', 5 );
    function remove_my_action(){
        remove_action('template_redirect', 'function_to_remove', 10 );
  2. Skip to note 2 content
    Contributed by Rami Yushuvaev

    Redirect existing pages to other pages:

    function custom_redirects() {
    	if ( is_front_page() ) {
    		wp_redirect( home_url( '/dashboard/' ) );
    	if ( is_page('contact') ) {
    		wp_redirect( home_url( '/new-contact/' ) );
    add_action( 'template_redirect', 'custom_redirects' );

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