プラグインWooCommerceのwoocommerce_page_titleフィルタの使用方法・解説

概要

woocommerce_page_titleは、WooCommerceで生成されるページのタイトルをフィルタリングするためのフックです。このフィルタを使用することで、特定の条件に基づいてページタイトルを変更したり、カスタマイズしたりすることができます。主に次のような機能を実装する際によく使われます。

  1. 特定の商品のページタイトルをカスタマイズする
  2. カテゴリーページに異なるタイトルを設定する
  3. 特定のユーザーグループに基づいてタイトルを変更する
  4. SEOに最適化したタイトルを生成する
  5. プロモーション用の特別なタイトルを追加する
  6. 言語の切り替えによるタイトルの変更

構文

add_filter( 'woocommerce_page_title', 'your_custom_function' );

パラメータ

  • $page_title: 変更前のページタイトル(文字列)

戻り値

  • 変更後のページタイトル(文字列)

バージョン情報

  • WooCommerce: 3.0以上
  • WordPress: 4.0以上

この関数のアクションでの使用可能性

アクション 使用例
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

サンプルコード

サンプル1: 商品ページのタイトルをカスタマイズ

function custom_product_page_title( $page_title ) {
    if ( is_product() ) {
        $page_title = '特別な商品ページ - ' . get_the_title();
    }
    return $page_title;
}
add_filter( 'woocommerce_page_title', 'custom_product_page_title' );

このコードは、商品ページのタイトルに「特別な商品ページ – 」というプレフィックスを追加します。

サンプル2: カテゴリーページにカスタムタイトルを設定

function custom_category_title( $page_title ) {
    if ( is_product_category() ) {
        $page_title = '特別なカテゴリー - ' . single_term_title('', false);
    }
    return $page_title;
}
add_filter( 'woocommerce_page_title', 'custom_category_title' );

このコードは、WooCommerce商品カテゴリーページに「特別なカテゴリー – 」というタイトルを追加します。

サンプル3: ユーザーによるタイトルの変更

function user_based_title( $page_title ) {
    if ( is_user_logged_in() ) {
        $page_title = 'ようこそ、' . wp_get_current_user()->display_name . 'さん!';
    }
    return $page_title;
}
add_filter( 'woocommerce_page_title', 'user_based_title' );

このコードは、ログインしているユーザーの名前を含むカスタムタイトルを設定します。

サンプル4: SEO向けのタイトル

function seo_optimized_title( $page_title ) {
    if ( is_shop() ) {
        $page_title = '最高のオンラインショップ | あなたのブランド名';
    }
    return $page_title;
}
add_filter( 'woocommerce_page_title', 'seo_optimized_title' );

このコードは、ショップページのタイトルをSEOに最適化された形に変更します。

サンプル5: ランディングページ用の特別タイトル

function landing_page_title( $page_title ) {
    if ( is_page( 'ランディングページ' ) ) {
        $page_title = '特別なオファー';
    }
    return $page_title;
}
add_filter( 'woocommerce_page_title', 'landing_page_title' );

このコードは、特定のランディングページのタイトルを「特別なオファー」に変更します。

この関数について質問する


上の計算式の答えを入力してください