WooCommerceでECサイトを開発すればするほど良いプラグインだと実感してる最近です。
今回は公式の有料プラグイン「WooCommerce Memberships」を使って会員専用の割引機能を追加しました。ただ、このプラグインは日本語に翻訳されていません。一部Webサイト上に表示されるテキストは英語です。日本語サイトであれば英語表示は避けたい。
中でも商品詳細ページ下部に表示される「Want a discount? Become a member.」というテキストが厄介です。というわけで、このテキストをフックを使って変更するコードのメモ書きです。
「Want a discount? Become a member.」というテキストを変更する
以下をfunctions.phpファイルなどに記述します。
function my_wc_memberships_member_discount_message( $message, $product_id, $products ) {
$changed_message = 'こちらの商品は会員になると割引されます。';
return $changed_message;
}
add_filter( 'wc_memberships_member_discount_message', 'my_wc_memberships_member_discount_message', 10, 3 );
これだけで商品の記事下にでるメッセージは変更できます。2行目の変数$change_message
に代入しているテキストを任意の文章に修正して使ってみてください。
メッセージを削除する
削除する場合は以下の1行のみで対応できます。
add_filter( 'wc_memberships_member_discount_message', '__return_false' );
参考: WooCommerce Memberships Frontend Hook Reference – WooCommerce Docs
2017年01月26日追記:
上記のようなプログラムを記述しなくても、専用のオプションページがありました。
WooCommerce > 設定 >Membershipsに「General」と「Products」があります。こちらから各英語のメッセージを任意の日本語に翻訳して設定しましょう。
「Member Login Message」という項目は、入力が空のままだと「This item is discounted for members. Log in to claim it.」といったような英語のメッセージが表示されてしまうので、必ず日本語のメッセージを入力しましょう。