Displays the default robots.txt file content.
Source
function do_robots() {
if ( ! headers_sent() ) {
header( 'Content-Type: text/plain; charset=utf-8' );
}
/**
* Fires when displaying the robots.txt file.
*
* @since 2.1.0
*/
do_action( 'do_robotstxt' );
$output = "User-agent: *\n";
$public = (bool) get_option( 'blog_public' );
$output .= 'Disallow: ' . wp_parse_url( admin_url(), PHP_URL_PATH ) . "\n";
$output .= 'Allow: ' . wp_parse_url( admin_url( 'admin-ajax.php' ), PHP_URL_PATH ) . "\n";
/**
* Filters the robots.txt output.
*
* @since 3.0.0
*
* @param string $output The robots.txt output.
* @param bool $public Whether the site is considered "public".
*/
echo apply_filters( 'robots_txt', $output, $public );
}
Hooks
- do_action( ‘do_robotstxt’ )
Fires when displaying the robots.txt file.
- apply_filters( ‘robots_txt’,
string $output ,bool $public ) Filters the robots.txt output.
Changelog
| Version | Description |
|---|---|
| 5.3.0 | Remove the "Disallow: /" output if search engine visibility is discouraged in favor of robots meta HTML tag via wp_robots_no_robots() filter callback. |
| 2.1.0 | Introduced. |
Some examples of how robots.txt file content can be altered.