Heim > CMS-Tutorial > WordDrücken Sie > Mastering von WooCommerce -Aktionen und Filtern

Mastering von WooCommerce -Aktionen und Filtern

Lisa Kudrow
Freigeben: 2025-02-18 12:06:14
Original
155 Leute haben es durchsucht

Mastering von WooCommerce -Aktionen und Filtern

Die Verwendung von WooCommerce zusammen mit WordPress, um E -Commerce -Websites zu erstellen, steigt. Wenn Sie ein Webentwickler wie ich sind, ist es eine sehr gute Fähigkeit, die INSS und aus dem WooCommerce -Vorlagensystem zusammen mit den Aktionen und Filtern zu kennen. Denken Sie nur darüber nach, wie glücklich Ihr Chef wäre, wenn Sie alles wüssten, was es über Woocommerce zu wissen gibt, oder zumindest genug, um etwas mit sehr wenig Hilfe implementieren zu können, nur Sie und die WooCommerce -Dokumentation.

Wenn das alles für Sie gut klingt, lesen Sie weiter und wir werden untersuchen, was mit WordPress und WooCommerce nebeneinander geschehen kann. Der Stil dieses Artikels (und hoffentlich viel mehr kommen) wird Ihnen ein Problem präsentieren und dann eine Lösung mit WordPress- und WooCommerce -Aktionen und -Filtern entwickeln.

Nützliche Aktionen zur Erstellung und Aktualisierung von Konto

Es ist sehr häufig, ein CRM zusammen mit Ihrer E -Commerce -Website zu verwenden. WooCommerce erleichtert uns einfach zu erkennen, wann ein neuer Kunde oder Benutzer während des Kassesprozesses oder über die Seite "Mein Konto" registriert wird.

Das folgende Beispiel sollte Ihnen eine Vorstellung davon geben, wie Sie ein Konto für Salesforce erstellen, wenn sich jemand durch WooCommerce registriert. Beachten Sie, dass der Salesforce -API -Code nicht angezeigt wird. Ich skize nur den Prozess.

<span><span><?php
</span></span><span><span>// Create Customer's Salesforce Account
</span></span><span><span>add_action( 'woocommerce_created_customer', 'create_salesforce_account', 10, 3 );
</span></span><span><span>function create_salesforce_account( $customer_id, $new_customer_data, $password_generated ) {
</span></span><span>
</span><span>	<span>// Get the New Customer's data
</span></span><span>	<span>$username   = $new_customer_data['user_login'];
</span></span><span>	<span>$password   = $new_customer_data['user_pass'];
</span></span><span>	<span>$email      = $new_customer_data['user_email'];
</span></span><span>	<span>$role       = $new_customer_data['role'];
</span></span><span>
</span><span>	<span>// Getting the rest of the info for this customer
</span></span><span>	<span>$user = get_user_by( 'id', $customer_id );
</span></span><span>
</span><span>	<span>// Continue and send the information to Salesforce now
</span></span><span><span>}</span></span>
Nach dem Login kopieren
Nach dem Login kopieren

weiter aus unserem vorherigen Beispiel ist es nur natürlich, dass Sie die Informationen des Kunden über Salesforce aktualisieren möchten, wenn der Kunde entweder die Abrechnung oder die Versandadresse bearbeitet. woocommerce_customer_save_address läuft unmittelbar nach der beiden Adresse bearbeitet und gibt die Benutzer -ID und welche Adresse bearbeitet wurde. Beachten Sie, dass Sie auch eine der Formularfelder über $ _post erhalten können.

<span><span><?php
</span></span><span><span>// Update Salesforce account with new shipping information
</span></span><span><span>add_action( 'woocommerce_customer_save_address', 'update_salesforce_account', 10, 2 );
</span></span><span><span>function update_salesforce_account( $user_id, $load_address ) {
</span></span><span>
</span><span>	<span>// Let's use a Switch statement to know which address we are updating
</span></span><span>	<span>switch ( $load_address ) {
</span></span><span>		<span>case 'billing':
</span></span><span>			<span>// Send billing info to Salesforce
</span></span><span>			<span>break;
</span></span><span>
</span><span>		<span>case 'shipping':
</span></span><span>			<span>// Send shipping info to Salesforce
</span></span><span>			<span>break;
</span></span><span>	<span>}
</span></span><span><span>}</span></span>
Nach dem Login kopieren

Übergeordnete Front-End-Titel, Nachrichten und Beschreibungen

Abschnitts Titel, Nachrichten und Beschreibungen können leicht geändert werden, wenn Sie wissen, welchen Filter Sie verwenden sollen. Mit diesen Filtern können Sie den Kunden an das letzte Detail anpassen, was dem Kunden angezeigt wird. Haben Sie bemerkt, dass ich Filter und keine Handlungen sage? Das liegt daran

Mastering von WooCommerce -Aktionen und Filtern woocommerce_checkout_coupon_message wird nur angezeigt, wenn Gutscheine in Ihrem Geschäft aktiviert sind und während Sie sich auf der Kasse -Seite befinden, werden Sie nach einem Gutscheincode aufgefordert. Zum Beispiel: Haben Sie einen Gutschein? Klicken Sie hier, um Ihren Code einzugeben.

Mastering von WooCommerce -Aktionen und Filtern WooCommerce_Checkout_login_Message wird auf der Kasse angezeigt, wenn der Wagen feststellt, dass Sie nicht angemeldet sind, und es gibt Ihnen die Möglichkeit, sich anzumelden. Zum Beispiel: Kunden zurückkehren? Klicken Sie hier, um sich anzumelden.

Mastering von WooCommerce -Aktionen und Filtern

woocommerce_lost_password_message wird unter der Seite "Mein Konto" angezeigt, auf der Sie Ihren Benutzernamen oder Ihre E -Mail eingeben, um Ihr Passwort zurückzusetzen. Zum Beispiel: Ihr Passwort verloren? Bitte geben Sie Ihren Benutzernamen oder Ihre E -Mail -Adresse ein. Sie erhalten einen Link, um ein neues Passwort per E -Mail zu erstellen.

Mastering von WooCommerce -Aktionen und Filtern

woocommerce_my_account_my_address_title wird auf der Seite "Mein Konto" angezeigt und standardmäßig kann es einen von zwei Titeln haben. Es ist geringfügig von "Meine Adressen" bis zu "Meine Adresse" geändert, wenn Sie nur an die Abrechnungsadresse eingerichtet sind, sodass nur einer von ihnen erforderlich ist. Zum Beispiel: meine Adressen oder meine Adresse.

Mastering von WooCommerce -Aktionen und Filtern

woocommerce_my_account_my_address_description zeigt direkt unter dem Adresstitel und gibt eine kurze Erläuterung, für die die Adresse (ES) verwendet wird. Zum Beispiel: Die folgenden Adressen werden standardmäßig auf der Checkout -Seite verwendet.

Mastering von WooCommerce -Aktionen und Filtern

woocommerce_my_account_my_downloads_title wird auf der Seite "Mein Konto" angezeigt und den Titel für den Abschnitt Downloads festgelegt. Zum Beispiel: verfügbare Downloads.

Mastering von WooCommerce -Aktionen und Filtern

woocommerce_my_account_my_orders_title wird auf der Seite "Mein Konto" angezeigt und den Titel für den Abschnitt Bestellungen festgelegt. Zum Beispiel: jüngste Bestellungen.

Es gibt einige davon und die Verwendung ist natürlich mit Ausnahme von Namen fast identisch. Hier sind einige Beispiele, wie man sie ändert.

<span><span><?php
</span></span><span><span>// Create Customer's Salesforce Account
</span></span><span><span>add_action( 'woocommerce_created_customer', 'create_salesforce_account', 10, 3 );
</span></span><span><span>function create_salesforce_account( $customer_id, $new_customer_data, $password_generated ) {
</span></span><span>
</span><span>	<span>// Get the New Customer's data
</span></span><span>	<span>$username   = $new_customer_data['user_login'];
</span></span><span>	<span>$password   = $new_customer_data['user_pass'];
</span></span><span>	<span>$email      = $new_customer_data['user_email'];
</span></span><span>	<span>$role       = $new_customer_data['role'];
</span></span><span>
</span><span>	<span>// Getting the rest of the info for this customer
</span></span><span>	<span>$user = get_user_by( 'id', $customer_id );
</span></span><span>
</span><span>	<span>// Continue and send the information to Salesforce now
</span></span><span><span>}</span></span>
Nach dem Login kopieren
Nach dem Login kopieren

Das wars jetzt. Wir haben erst begonnen, zu untersuchen, was unter der Motorhaube von Woocommerce steht, und wir werden im Durchgang einer Reihe von Artikeln komplexere Module erstellen, die stark darauf angewiesen sind Köpfe zu tun.

Im nächsten Artikel werden wir an einem Fall in der realen Welt arbeiten, in dem Sie möglicherweise ein kostenloses Produkt mit jedem Kauf geben möchten, der unter anderem unter anderem Kriterien entspricht.

häufig gestellte Fragen zum Beherrschen von WooCommerce -Aktionen und Filtern

Wie kann ich einem WooCommerce -Hook eine benutzerdefinierte Aktion hinzufügen? Diese Funktion erfordert zwei Parameter: den Namen des Hakens und die zu ausgeführte Funktion. Hier ist ein Beispiel:

add_action ('woocommerce_before_cart', 'your_custom_function'); 'Ist der Haken, an dem Sie Ihre Aktion hinzufügen möchten, und' your_custom_function 'ist die Funktion, die ausgeführt wird.

Wie kann ich eine Aktion aus einem WooCommerce -Hook entfernen? Diese Funktion erfordert dieselben Parameter wie die Funktion add_action (): den Namen des Hakens und die zu entfernende Funktion. Hier ist ein Beispiel:

remove_action ('woocommerce_before_cart', 'your_custom_function'); Das wird entfernt.

Wie kann ich das Standardverhalten eines WooCommerce -Hooks ändern? Mit Filtern können Sie Daten ändern, bevor sie an die Datenbank oder den Browser gesendet werden. Hier ist ein Beispiel:

add_filter ('woocommerce_cart_item_price', 'modify_cart_item_price', 10, 2); $ new_price;

}

In diesem Beispiel ist 'woocommerce_cart_item_price' der Filterhaken, 'modify_cart_item_price' ist Ihre benutzerdefinierte Funktion, '10' ist die Priorität Ihrer Funktion und '2' ist die Nummer der Parameter, die Ihre Parameter Ihrer Funktion akzeptiert.


Wie kann ich der WooCommerce -Checkout -Seite ein benutzerdefiniertes Feld hinzufügen? Hier ist ein Beispiel:

add_action ('woocommerce_after_order_notes', 'add_custom_checkout_field'; Array (
'Typ' => 'text',
'class' => array ('input-text'),
'Label' => __ ('benutzerdefiniertes Feld'),
'Erforderlich' => true,

), $ checkout-> get_value ('custom_field'));

echo ''; Der Hook, in dem Sie Ihr benutzerdefiniertes Feld hinzufügen möchten, und 'add_custom_checkout_field' ist die Funktion, die das benutzerdefinierte Feld erstellt. Der Produktpreis programmatisch können Sie den Filterhaken "woocommerce_product_get_price" verwenden. Hier ist ein Beispiel:

add_filter ('woocommerce_product_get_price', 'modify_product_price', 10, 2). $ new_price;
}
In diesem Beispiel ist 'woocommerce_product_get_price' der Filterhaken, 'modify_product_price' ist Ihre benutzerdefinierte Funktion, '10' ist die Priorität Ihrer Funktion, und '2' ist die Anzahl der Parameter, die Ihre Parameter Ihrer Funktion akzeptiert.

Das obige ist der detaillierte Inhalt vonMastering von WooCommerce -Aktionen und Filtern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage