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

概要

woocommerce_review_metaフィルタは、WooCommerceの製品レビューのメタデータを加工したり追加したりするために使用されるフックです。このフィルタを使うことで、レビューに関連する情報の見せ方をカスタマイズすることができ、例えば、レビューの書き手の情報やレビューの日付、特定のフィールドのカスタマイズなどが行えます。woocommerce_review_metaフィルタは以下のような機能実装時によく使用されます。

  1. レビュー者の情報の強調
  2. 投稿日時のフォーマット変更
  3. ソーシャルメディアリンクの追加
  4. カスタムフィールドの追加
  5. レビューの平均評価の表示方法の変更
  6. レビューのカスタマイズされた分類表示

構文

add_filter('woocommerce_review_meta', 'your_function_name', 10, 2);

パラメータ

  • $meta: 既存のメタデータを含む配列。
  • $review: レビューオブジェクト。

戻り値

  • メタデータを含む配列。一部の要素が変更されている場合は、それに基づいて新しい配列が返される。

対応バージョン

  • 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_filter('woocommerce_review_meta', 'custom_review_meta', 10, 2);
function custom_review_meta($meta, $review) {
    $meta['custom_field'] = 'このレビューはカスタマイズされています';
    return $meta;
}

説明: 既存のレビューのメタデータにカスタムフィールドを追加します。レビューのメタ情報に「このレビューはカスタマイズされています」というメッセージを付加します。

サンプルコード 2

add_filter('woocommerce_review_meta', 'modify_review_date_format', 10, 2);
function modify_review_date_format($meta, $review) {
    $meta['date'] = date('Y年m月d日', strtotime($review->date_created));
    return $meta;
}

説明: レビューの日付のフォーマットを変更します。元のフォーマットを日本語の年月日の形式に変換します。

サンプルコード 3

add_filter('woocommerce_review_meta', 'add_social_links_to_reviews', 10, 2);
function add_social_links_to_reviews($meta, $review) {
    $meta['social_links'] = '<a href="https://twitter.com/share?url=' . get_permalink($review->product_id) . '">Twitterでシェア</a>';
    return $meta;
}

説明: レビューのメタ情報にTwitterでのシェアリンクを追加します。ユーザーがレビューを簡単に共有できるようにします。

サンプルコード 4

add_filter('woocommerce_review_meta', 'highlight_reviewer_info', 10, 2);
function highlight_reviewer_info($meta, $review) {
    $meta['reviewer_info'] = '<strong>' . esc_html($review->reviewer) . '</strong> さんのレビュー';
    return $meta;
}

説明: レビューを書いた人の名前を強調して表示します。レビュー者の情報を目立たせるために、太字にします。

サンプルコード 5

add_filter('woocommerce_review_meta', 'custom_rating_display', 10, 2);
function custom_rating_display($meta, $review) {
    $metas['rating'] = str_repeat('⭐', intval($review->rating));
    return $meta;
}

説明: 顧客の評価を星形のアイコンで表示します。数字の評価を視覚的に分かりやすくするために星を用いて表現します。

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


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