概要
woocommerce_rating_filter_link
フィルタは、WooCommerceのプロダクトの評価フィルターリンクのURLをカスタマイズするために使用されます。このフィルタを使用することにより、評価フィルターのリンク先を変更したり、特定のクエリパラメータを追加したりすることができます。これにより、ショップの条件に合わせたカスタマイズが可能になります。
主に以下の機能を実装する際に使われます:
- フィルタリングされた評価に基づく商品リストの表示
- 特定の評価範囲の商品へのリンク生成
- SEOの最適化のためのURL変更
- ユーザーのインタラクションを追跡するためのクエリパラメータ追加
- 商品評価に関連するカスタムアナリティクスの実装
- キャンペーンやプロモーションのための特定の評価フィルタの適用
構文
apply_filters( 'woocommerce_rating_filter_link', string $link, int $rating );
パラメータ
$link
: 生成されるフィルターリンクのURL(文字列)$rating
: 評価の数値(整数)
戻り値
- フィルタリングされた評価フィルターリンク(文字列)
使用可能なプラグインバージョン
- WooCommerce バージョン: 3.0.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_rating_filter_link', 'custom_rating_filter_link', 10, 2 );
function custom_rating_filter_link( $link, $rating ) {
return $link . '?ref=custom_filter';
}
このサンプルは、評価フィルターのリンクにカスタムのクエリパラメータref=custom_filter
を追加します。これにより、どのフィルターが使用されているかをトラッキングすることができます。
サンプルコード2
add_filter( 'woocommerce_rating_filter_link', 'modify_rating_link', 10, 2 );
function modify_rating_link( $link, $rating ) {
return str_replace( 'rating=', 'feedback=', $link );
}
このコードは、評価フィルターリンクのrating=
をfeedback=
に置き換え、リンクの構造を変更します。これにより異なるURLパラメータを使いたい場合に役立ちます。
サンプルコード3
add_filter( 'woocommerce_rating_filter_link', 'custom_query_rating_links', 10, 2 );
function custom_query_rating_links( $link, $rating ) {
$new_link = $link . '&utm_source=rating_filter';
return esc_url( $new_link );
}
このサンプルは、評価フィルターリンクにutm_source=rating_filter
を追加し、Google Analyticsなどのトラッキング用に最適化しています。
サンプルコード4
add_filter( 'woocommerce_rating_filter_link', 'prefix_rating_link', 10, 2 );
function prefix_rating_link( $link, $rating ) {
return 'myshop.com/product' . substr( $link, strpos( $link, '?' ) );
}
このコードは、評価フィルターリンクを指定のドメインmyshop.com
に基づいて作り直します。これにより、カスタムドメインへのリンクを生成します。
サンプルコード5
add_filter( 'woocommerce_rating_filter_link', 'set_custom_rating_filter', 10, 2 );
function set_custom_rating_filter( $link, $rating ) {
return $link . '&filter=custom_rating';
}
このサンプルは、評価フィルターリンクにカスタムのフィルターfilter=custom_rating
を追加します。この追加により、特定の評価条件を反映したリンクが作成されます。
引用元のページは示されていませんが、WooCommerceの公式ドキュメントを参考にすることが推奨されます。