Ich versuche, die Nachrichten in meinem Woocommerce-Design neu zu positionieren. Zum Beispiel die erfolgreich zum Warenkorb hinzugefügte Nachricht. Sie scheinen automatisch ganz oben zu stehen, wo der Start des Woocommerce-Wrappers beginnt.
Ich habe bereits diesen Link gefunden, mit dem ich den Wortlaut der Nachricht ändern kann. Ich muss die Nachricht jedoch von ihrem Standort entfernen und an einer anderen Stelle neu positionieren.
Ich habe das Woocommerce-Forum, dieses Forum und die Woocommerce-Vorlagendateien durchsucht. Es gibt eine messages.php, die aber nur das Markup für die Nachrichten enthält. Ich kann nicht herausfinden, wie ich die Position der Nachrichten ändern kann. Jede Hilfe hierzu wäre sehr dankbar.
WooCommerce rendert Nachrichten mit der Funktion woocommerce_show_messages()
. Diese Funktion ist mit der Aktion woocommerce_before_single_product
verknüpft. Wenn Sie also keine Nachrichten vor einem einzelnen Produkt rendern möchten, müssen Sie diesen Haken für die Aktion entfernen.
remove_action( 'woocommerce_before_single_product', 'woocommerce_show_messages' );
Wenn Sie Nachrichten an einem anderen Ort rendern möchten, rufen Sie einfach die Funktion woocommerce_show_messages()
am gewünschten Ort auf.
remove_action( 'woocommerce_before_single_product', 'woocommerce_show_messages' );
add_action( 'woocommerce_after_single_product', 'woocommerce_show_messages', 15 );
Bei Bedarf können Sie auch einen dritten Parameter für die Positionierungspriorität hinzufügen.
Quelle Woo Hooks
Seit 2.1.0 ist woocommerce_show_messages eine veraltete Funktion. Sie sollten stattdessen wc_print_notices verwenden:
remove_action( 'woocommerce_before_single_product', 'wc_print_notices' );