概要
wc_after_products_starting_sales
はWooCommerceプラグインにおいて製品の販売が開始された直後に実行されるアクションフックです。このフックを利用することで、製品の販売が始まるタイミングを特定し、その後に特定の処理を行うことができます。このフックは次のような機能を実装する際によく使われます:
- セール通知の表示
- リマーケティングクッキーの設定
- SEO用のメタデータの追加
- 特別オファーやディスカウントの表示
- ソーシャルメディアへの自動投稿
- カスタムスクリプトやスタイルの追加
構文
do_action('wc_after_products_starting_sales', $product_id);
パラメータ
$product_id
(int): 現在の製品のID。
戻り値
このアクションは戻り値を持ちません。フックが実行された時に他の関数を呼び出すために使用されます。
使用可能なプラグイン・バージョン
- 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: セール開始のメッセージを表示
add_action('wc_after_products_starting_sales', 'display_sale_message');
function display_sale_message($product_id) {
$product = wc_get_product($product_id);
if ($product->is_on_sale()) {
echo '<div class="sale-message">この商品はセール中です!</div>';
}
}
このコードは、製品がセール中の場合に特別なメッセージを表示します。
サンプルコード2: リマーケティングクッキーの設定
add_action('wc_after_products_starting_sales', 'set_remarketing_cookie');
function set_remarketing_cookie($product_id) {
setcookie('remarketing_product_' . $product_id, '1', time() + 3600, COOKIEPATH, COOKIE_DOMAIN);
}
このコードは、特定の製品が開始セールしたときにリマーケティング用のクッキーを設定します。
サンプルコード3: SEO用のメタデータを追加
add_action('wc_after_products_starting_sales', 'add_meta_tags_for_seo');
function add_meta_tags_for_seo($product_id) {
$product = wc_get_product($product_id);
echo '<meta name="description" content="' . esc_attr($product->get_description()) . '">';
}
このコードは、製品の説明をメタデータとして追加します。これはSEO対策に役立ちます。
サンプルコード4: 特別オファーの表示
add_action('wc_after_products_starting_sales', 'display_special_offer');
function display_special_offer($product_id) {
echo '<div class="special-offer">今だけ特別オファー!お見逃しなく!</div>';
}
このコードは、製品が販売開始された際に特別オファーを表示します。
サンプルコード5: ソーシャルメディアへの自動投稿
add_action('wc_after_products_starting_sales', 'post_to_social_media');
function post_to_social_media($product_id) {
$product = wc_get_product($product_id);
// 簡単なソーシャルメディア投稿の処理
wp_remote_post('YOUR_SOCIAL_MEDIA_API_URL', array(
'body' => json_encode(array(
'message' => '新商品 ' . $product->get_name() . ' が販売開始されています!',
)),
));
}
このコードは、製品が販売開始されたタイミングでソーシャルメディアに投稿します。