私はWoocommerceテーマのメッセージを再配置しようとしています。たとえば、カートへの追加に成功したというメッセージなどです。それらは自動的にウーコマースラッパーのスタートが始まる場所の一番上に置かれるように見えます。
このリンク はメッセージの文言を変更することができますが、必要なのはメッセージをある場所から削除して別の場所に移動することです。
私はwoocommerceフォーラム、このフォーラムとwoocommerceテンプレートファイルを探しました。 messages.phpがありますが、それはメッセージのマークアップを含んでいるようにしか見えません。メッセージの表示場所を変更する方法がわかりません。この上の任意の助けは大歓迎です。
WooCommerceはwoocommerce_show_messages()
関数を使ってメッセージをレンダリングします。この関数はwoocommerce_before_single_product
アクションにフックされています。そのため、単一の製品の前にメッセージをレンダリングしたくない場合は、アクションのためにそのフックを削除する必要があります。
remove_action( 'woocommerce_before_single_product', 'woocommerce_show_messages' );
メッセージを別の場所にレンダリングしたい場合は、目的の場所でwoocommerce_show_messages()
関数を呼び出すだけです。
remove_action( 'woocommerce_before_single_product', 'woocommerce_show_messages' );
add_action( 'woocommerce_after_single_product', 'woocommerce_show_messages', 15 );
必要に応じて、位置決め優先順位の3番目のパラメータを追加することもできます。
出典 ウーフック
2.1.0以降、woocommerce_show_messagesは廃止予定の機能です。代わりにwc_print_noticesを使用してください。
remove_action( 'woocommerce_before_single_product', 'wc_print_notices' );