Using WordPress ‘current_filter()’ PHP function

The current_filter() WordPress PHP function retrieves the name of the current filter hook.

Table of contents

Usage

To use the function, simply call it within your custom function or action. See this example:

function my_content_filter() { 
    echo current_filter(); // Outputs: 'the_content' 
}
add_filter( 'the_content', 'my_content_filter' );

In this example, current_filter() is used to retrieve and echo the name of the current filter hook which is ‘the_content’.

Parameters

This function does not take any parameters.

More information

See WordPress Developer Resources: current_filter()

Examples

Display Current Filter within a Content Filter

function display_current_filter() { 
    echo current_filter(); // Outputs: 'the_content' 
}
add_filter( 'the_content', 'display_current_filter' );

This code displays the name of the current filter hook within a content filter. It should output ‘the_content’.

Display Current Filter within an Init Action

function display_current_action() { 
    echo current_filter(); // Outputs: 'init' 
}
add_action( 'init', 'display_current_action' );

This code displays the name of the current action hook within an init action. It should output ‘init’.

Check Current Filter Name in a Custom Filter

function check_current_filter() { 
    if (current_filter() == 'the_content') {
        echo 'Content filter is currently active.';
    }
}
add_filter( 'the_content', 'check_current_filter' );

This code checks if the current filter is ‘the_content’, and if so, it echoes a message.

Use Current Filter in a Conditional Statement

function condition_based_on_filter() { 
    if (current_filter() == 'the_content') {
        // Do something when the content filter is running
    }
}
add_filter( 'the_content', 'condition_based_on_filter' );

This code performs an action only when the current filter is ‘the_content’.

Log Current Filter Name

function log_current_filter() { 
    error_log(current_filter());
}
add_filter( 'all', 'log_current_filter' );

This code logs the name of each filter as it runs. It uses the ‘all’ hook, which is fired for all actions and filters.

Leave a Comment

Your email address will not be published. Required fields are marked *