概要
woocommerce_get_price_suffix
は、WooCommerceの価格表記の後に追加されるサフィックス(接尾辞)を変更するためのフィルターフックです。このフックは、商品の価格表示にカスタムテキストやHTMLマークアップを追加する際によく利用されます。以下のような機能を実装する際に役立ちます。
- 特定の料金を示すカスタムテキストの追加
- セールやプロモーションのための特別なサフィックス表示
- 通貨シンボルやその他の情報を価格に追加
- 同時に複数の価格表示(例えば、税抜き価格と税込み価格)を行うための調整
- 特定の商品やカテゴリのためのカスタマイズされた表示
- 商品が特別な条件にあることの表示(例:在庫限り、期間限定)
構文
add_filter( 'woocommerce_get_price_suffix', 'custom_price_suffix', 10, 2 );
パラメータ
$price_suffix
(string):デフォルトの価格サフィックス。$product
(WC_Product):対象となる商品オブジェクト。
戻り値
- (string):フィルタ後のサフィックス。
使用可能なプラグインWooCommerceのバージョン
WooCommerce 2.1.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: カスタムサフィックスの追加
このサンプルコードは、商品の価格表記に「(税込)」といったサフィックスを追加します。
add_filter( 'woocommerce_get_price_suffix', 'add_custom_price_suffix', 10, 2 );
function add_custom_price_suffix( $price_suffix, $product ) {
return $price_suffix . ' (税込)';
}
引用元: https://developer.woocommerce.com/
サンプル2: 特別セールサフィックスの表示
このサンプルコードでは、商品がセール中のときに価格サフィックスに「セール」を追加します。
add_filter( 'woocommerce_get_price_suffix', 'add_sale_suffix', 10, 2 );
function add_sale_suffix( $price_suffix, $product ) {
if ( $product->is_on_sale() ) {
return $price_suffix . ' <span class="sale">セール中!</span>';
}
return $price_suffix;
}
引用元: https://wpdocs.osdn.jp/
サンプル3: 商品カテゴリごとのサフィックス変更
このサンプルは、特定の商品カテゴリに対して異なるサフィックスを表示します。
add_filter( 'woocommerce_get_price_suffix', 'conditional_category_suffix', 10, 2 );
function conditional_category_suffix( $price_suffix, $product ) {
if ( has_term( '特別カテゴリ', 'product_cat', $product->get_id() ) ) {
return $price_suffix . ' (限定)';
}
return $price_suffix;
}
引用元: https://www.smashingmagazine.com/
サンプル4: 通貨シンボルの追加
このサンプルは、価格サフィックスに通貨シンボルを追加します。
add_filter( 'woocommerce_get_price_suffix', 'add_currency_symbol_suffix', 10, 2 );
function add_currency_symbol_suffix( $price_suffix, $product ) {
return $price_suffix . ' 💰';
}
引用元: https://www.wpbeginner.com/
サンプル5: 在庫限りサフィックスの表示
このサンプルは、在庫が限られている商品の価格に「在庫限り」を追加します。
add_filter( 'woocommerce_get_price_suffix', 'low_stock_suffix', 10, 2 );
function low_stock_suffix( $price_suffix, $product ) {
if ( $product->get_stock_quantity() < 5 && $product->is_in_stock() ) {
return $price_suffix . ' (在庫限り)';
}
return $price_suffix;
}
引用元: https://wordpress.org/