do_robots()


WordPressのdo_robots()関数は、robots.txtファイルの出力を制御するために使用されます。この関数を利用して、特定の条件に基づいたルールを定義することができます。

構文

do_robots();

機能の概要

  • do_robots()は、WordPressが動的に生成するrobots.txtルールを出力します。
  • カスタムルールを追加または変更したい場合にフィルターフックを使用することが可能です。

例 1: デフォルトのrobots.txtルールを出力する

この例は、do_robots()を使用して、WordPressのデフォルトのrobots.txtルールを出力します。

<?php do_robots(); ?>

例 2: robots.txtルールをフィルターフックでカスタマイズ

以下のコードは、robots_txtフィルターフックを使用してカスタムルールを追加します。

<?php
add_filter( 'robots_txt', function( $output, $public ) {
    if ( $public ) {
        $output .= "Disallow: /custom-path/\n";
    }
    return $output;
}, 10, 2 );
?>

例 3: robots.txtルールの条件付き追加

特定のページが公開されている場合のみルールを追加します。

<?php
add_filter( 'robots_txt', function( $output, $public ) {
    if ( is_page( 'contact' ) ) {
        $output .= "Disallow: /private-data/\n";
    }
    return $output;
}, 10, 2 );
?>

例 4: robots.txtに特定のクロールディレイを追加

クローラーごとにクロールディレイを設定します。

<?php
add_filter( 'robots_txt', function( $output, $public ) {
    $output .= "Crawl-delay: 10\n";
    return $output;
}, 10, 2 );
?>

例 5: XMLサイトマップのリンクを追加

robots.txtファイルにXMLサイトマップのURLを追加します。

<?php
add_filter( 'robots_txt', function( $output, $public ) {
    $output .= "Sitemap: " . get_home_url() . "/sitemap.xml\n";
    return $output;
}, 10, 2 );
?>

関連機能: