概要
woocommerce_short_description
フィルタは、WooCommerceで製品の短い説明をフィルタリングするためのフックです。このフィルタを使用することで、商品の短い説明をカスタマイズしたり、追加のHTMLやテキストを挿入することができます。一般的に、以下のような機能を実装する際に使われます。
- 商品の説明にカスタムマークアップを追加する。
- 特定の条件に基づいて説明を変更する(例:特定の製品カテゴリーの場合)。
- 言語に応じて説明を変更する(多言語サイト向け)。
- プロモーションメッセージや特別オファーを埋め込む。
- 自動的に他の商品へのリンクを追加する。
- SEO対策のためにメタ情報を挿入する。
構文
add_filter( 'woocommerce_short_description', 'custom_function_name' );
パラメータ
$post_excerpt
(string): 商品の短い説明。
戻り値
- (string): フィルタリングされた短い説明。
使用可能なプラグインWooCommerceのバージョン
WooCommerce 3.0 以降。
ワードプレスのバージョン
WordPress 4.0 以降。
サンプルコード
サンプルコード 1: HTMLを追加する
このサンプルでは、短い説明内にカスタムHTMLを追加します。
add_filter('woocommerce_short_description', 'add_custom_html_to_short_desc');
function add_custom_html_to_short_desc($post_excerpt) {
return $post_excerpt . '<strong>特別オファー中!</strong>';
}
サンプルコード 2: 特定のカテゴリーのときに説明を変更する
このサンプルでは、特定の製品カテゴリーに基づいて説明を変更します。
add_filter('woocommerce_short_description', 'change_short_desc_for_category');
function change_short_desc_for_category($post_excerpt) {
global $post;
if (has_term('特定カテゴリー', 'product_cat', $post)) {
return 'このカテゴリーの特別な説明です。';
}
return $post_excerpt;
}
サンプルコード 3: 翻訳に基づいた説明の変更
このサンプルコードでは、多言語サイトで言語に応じた説明を挿入します。
add_filter('woocommerce_short_description', 'change_desc_based_on_language');
function change_desc_based_on_language($post_excerpt) {
if (ICL_LANGUAGE_CODE == 'ja') {
return '日本語の説明です。';
}
return $post_excerpt;
}
サンプルコード 4: オンラインショップの信頼性を示すバッジを追加する
このサンプルは、短い説明に信頼性を示すバッジを追加します。
add_filter('woocommerce_short_description', 'add_trust_badge_to_short_desc');
function add_trust_badge_to_short_desc($post_excerpt) {
return $post_excerpt . '<img src="バッジのURL" alt="信頼バッジ">';
}
サンプルコード 5: SEOを意識したメタ情報の追加
このコードは短い説明にSEO対策のためのメタ情報を追加します。
add_filter('woocommerce_short_description', 'add_seo_meta_to_short_desc');
function add_seo_meta_to_short_desc($post_excerpt) {
return $post_excerpt . '<meta name="description" content="この商品は...">';
}
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
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 |