The do_feed()
WordPress PHP function loads the feed template using an action hook. If the feed action does not have a hook, the function will halt with a message indicating that the feed is not valid. It is advisable to have only one hook for each feed.
Usage
Here’s a general usage of the do_feed()
function:
do_feed();
Since do_feed()
has no parameters, it’s straightforward to use. Upon execution, it loads the appropriate feed template or displays a message if the feed is not valid.
Parameters
The do_feed()
function does not accept any parameters.
More information
See WordPress Developer Resources: do_feed()
The do_feed()
function has been a part of WordPress since version 2.1. It’s a core function of WordPress, so it is not deprecated. The source code for this function can be found in wp-includes/functions.php.
Examples
Basic usage of do_feed()
// Call the function do_feed();
In this example, do_feed()
will load the feed template associated with the current action hook. If no such hook exists, it will display an error message.
Using do_feed()
in a template file
// In a template file, for example single.php get_header(); if (have_posts()) { while (have_posts()) { the_post(); the_content(); } } // At the end of your loop do_feed();
In this example, do_feed()
is placed at the end of a loop in a template file, which will load the feed template after the posts are displayed.
Using do_feed()
in a custom function
// Create a custom function function my_custom_function() { // Some code here... do_feed(); // More code here... } // Call your custom function my_custom_function();
Here, do_feed()
is used within a custom function. When my_custom_function()
is called, it runs do_feed()
as part of its operations.
Using do_feed()
in an action hook
// Add an action hook for 'init' add_action('init', 'do_feed');
In this case, do_feed()
is added to the ‘init’ action hook. This means that do_feed()
will be called during WordPress initialization.
Using do_feed()
in a plugin
// In your plugin file function my_plugin_function() { // Plugin code here... do_feed(); // More plugin code here... } // Call your plugin function my_plugin_function();
In this example, do_feed()
is used within a plugin function. This can be useful for plugin development where you need to load the feed template as part of the plugin’s functionality.