Merchan Webdesign
Kassenfelder bearbeiten - Action & Filter - WooCommerce

Kassenfelder bearbeiten – Action & Filter – WooCommerce

Die Kassenfelder in WooCommerce bearbeiten

Es muss nicht immer gleich ein Plug-in sein. Lasst uns die Kassenfelder mit Action und Filter bearbeiter.

Zwingende Voraussetzung dafür ist, dass ihr ein Child Theme aktiviert habt. Ohne Child Theme handelt ihr euch dieselbe Arbeit immer und immer wieder ein und müsst alles wiederholen.

Felder optional machen

Pflichtfelder könnt ihr zu optionalen Feldern machen. Hier ein Beispiel:

Hier habe ich aus dem Vornamen-Pflichtfeld ein optionales Feld gemacht. Der Vorname muss also nicht bei der Bestellung angegeben werden. Erreicht wird das mit folgendem Filter:

add_filter( 'woocommerce_default_address_fields' , 'custom_override_default_address_fields' );

function custom_override_default_address_fields( $address_fields ) {
     $address_fields['first_name']['required'] = false;

     return $address_fields;
}

Genau dieses Code Snippet fügt ihr in eure functions.php via ftp Zugang ein, oder ihr habt die Möglichkeit über das WordPress Backend auf den Theme-Datei-Editor zuzugreifen. Design -> Theme-Datei-Editor

Alle anderen Adressfelder könnt ihr ebenfalls optional machen. Benutzt dazu bitte folgende Begriffe:

  • country – Land / Region
  • first_name – Vorname
  • last_name – Nachname
  • company – Firmenname 
  • address_1 – Straßename und Hausnummer
  • address_2 – Wohnung, Suite, Zimmer usw.
  • city – Ort / Stadt
  • state – Bundesland 
  • postcode – Postleitzahl 

Wichtig

Achtet bitte darauf, dass ihr die Begriffe nicht alleinstehend in die eckigen Klammern schreibt, sondern immer zwischen einzelne Anführungsstriche setzt.

Beachtet außerdem, dass ihr nicht mehrere Funktionen hintereinander scheiben könnt. Zum Beispiel [‚first_name‘][‚last_name‘] funktioniert nicht. Ihr müsst für jedes Feld einen separaten Filter erstellen.

Felder entfernen

Felder zu entfernen ist wahrscheinlich der häufigste Grund, um die Kassenseite zu bearbeiten. WooCommerce gibt im Checkout eine ziemlich hohe Anzahl an Feldern vor, die für einige Shopbetreiber nicht unbedingt höchste Priorität haben. Schauen wir uns daher an, wie Felder entfernt werden können.

Zusätzliche-Informationen-woocommerce
Zusätzliche-Informationen-entfernen-woocommerce

Wie ihr seht, ist die Möglichkeit eine Anmerkung zu hinterlassen verschwunden. Erreicht wird das mit:

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );

function custom_override_checkout_fields( $fields ) {
     unset($fields['order']['order_comments']);

     return $fields;
}

Um den Satz „Zusätzliche Informationen“ zu entfernen, müsst ihr die CSS Klasse suchen. Im Browser auf F12 klicken und dann das Element untersuchen.

zusätzliche-informationen-css-entfernen-woocommerce

Im Customizer unter Zusätzliches CSS fügt ihr folgendes ein:

.woocommerce-additional-fields {
	display:none;
}

Felder Rechnungsadresse entfernen

Nutzt dazu bitte [‚billing‘] in der function.

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );

function custom_override_checkout_fields( $fields ) {
     unset($fields['billing']['dein_feld']);

     return $fields;
}

Folgende Felder stehen euch zur Verfügung:

  • billing_first_name
  • billing_last_name
  • billing_company
  • billing_address_1
  • billing_address_2
  • billing_city
  • billing_postcode
  • billing_country
  • billing_state
  • billing_email
  • billing_phone
Wichtig

Beachtet bitte, dass es sich dabei um die Felder der Rechnungsadresse handelt. Nicht um die Standard-Adressfelder der Rechnungsdetails.

Felder Lieferadresse entfernen

Nutzt dazu bitte [’shipping‘] in der function.

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );

function custom_override_checkout_fields( $fields ) {
     unset($fields['shipping']['dein_feld']);

     return $fields;
}

Folgende Felder stehen euch zur Verfügung:

  • shipping_first_name
  • shipping_last_name
  • shipping_company
  • shipping_address_1
  • shipping_address_2
  • shipping_city
  • shipping_postcode
  • shipping_country
  • shipping_state

Felder umbennen

Wenn euch die Beschriftung der Felder nicht gefällt, könnt ihr sie auch umbennen. Dazu benötigen wir [‚placeholder‘] <- für das, was im Feld steht; und [‚label‘] <- für das, was über dem Feld steht.

Platzhalter-label-woocommerce-original
Platzhalter-label-woocommerce

Um die Felder der Lieferadresse zu ändern benötigen wir:

add_filter( 'woocommerce_checkout_fields' , 'custom_override_checkout_fields' );

function custom_override_checkout_fields( $fields ) {
     $fields['shipping']['shipping_first_name']['placeholder'] = 'Ein anderer Platzhalter';
     $fields['shipping']['shipping_first_name']['label'] = 'Ein neues Label';
     return $fields;
}
Wichtig

Achtet an dieser Stelle bitte auf die richtige Schreibweise.

  • Für die Lieferadresse benötigt ihr: [’shipping‘][’shipping_first_name‘][‚label‘] = ‚Euer Label‘,
  • Für die Rechnungsadresse : [‚billing‘][‚billing_first_name‘][‚label‘] = ‚Euer Label‘,
  • Für die zusätzlichen Felder: [‚order‘][‚order_comments‘][‚label‘] = ‚Euer Label‘;

Für die Standard-Adressfelder gilt folgendes:

add_filter( 'woocommerce_default_address_fields' , 'custom_override_default_address_fields' );

function custom_override_default_address_fields( $address_fields ) {
     $address_fields['first_name']['label'] = 'Euer Label';

     return $address_fields;
}

Unbedingt beachten

Bitte macht, wenn ihr euch nicht sicher seid, was ihr tut und was ihr verändert, keinerlei Änderungen im Live-Betrieb. Unter Umständen, manchmal reicht ein falsches Komma, schrottet ihr nicht nur euren Shop, sondern gleich die ganze Seite. Natürlich könnt ihr das schnell beheben, indem ihr das Snippet wieder löscht. Dennoch arbeitet super konzentriert an eurer Seite, wenn ihr solch tiefgreifende Änderungen vornehmt.

Facebook
Twitter
LinkedIn
WhatsApp
Telegram

Fragen?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert