So blockieren Sie bestimmte Zustände in WooCommerce

Veröffentlicht: 2019-07-11

Sie haben etwas zu verkaufen, wollen es aber aus logistischen, rechtlichen oder anderen Gründen nicht an jedes Bundesland verkaufen?

Nun, in einem solchen Szenario können Sie einfach bestimmte Zustände in WooCommerce blockieren.

Blockieren Sie bestimmte Staaten in WooCommerce

Lassen Sie mich erklären, wie Sie einige Staaten in jedem Land, das Sie verkaufen, blockieren, einschränken oder zulassen können…

Der folgende Code zeigt die vollständige Liste der Staaten in den Vereinigten Staaten.

Um Verkäufe in bestimmten Staaten zu blockieren, müssen Sie jetzt die Staaten löschen, die Sie nicht verkaufen möchten.

Mit anderen Worten, die Liste besteht nur aus den Staaten, in die Sie verkaufen. So einfach ist das…

 /** * Sell only in specific states * Remove the states not eligible to purchase * Final list is of states that CAN purchase */ add_filter( 'woocommerce_states', 'wpglorify_restrict_states' ); function wpglorify_restrict_states( $states ) { $states['US'] = array( 'AL' => __( 'Alabama', 'woocommerce' ), 'AK' => __( 'Alaska', 'woocommerce' ), 'AZ' => __( 'Arizona', 'woocommerce' ), 'AR' => __( 'Arkansas', 'woocommerce' ), 'CA' => __( 'California', 'woocommerce' ), 'CO' => __( 'Colorado', 'woocommerce' ), 'CT' => __( 'Connecticut', 'woocommerce' ), 'DE' => __( 'Delaware', 'woocommerce' ), 'DC' => __( 'District Of Columbia', 'woocommerce' ), 'FL' => __( 'Florida', 'woocommerce' ), 'GA' => _x( 'Georgia', 'US state of Georgia', 'woocommerce' ), 'HI' => __( 'Hawaii', 'woocommerce' ), 'ID' => __( 'Idaho', 'woocommerce' ), 'IL' => __( 'Illinois', 'woocommerce' ), 'IN' => __( 'Indiana', 'woocommerce' ), 'IA' => __( 'Iowa', 'woocommerce' ), 'KS' => __( 'Kansas', 'woocommerce' ), 'KY' => __( 'Kentucky', 'woocommerce' ), 'LA' => __( 'Louisiana', 'woocommerce' ), 'ME' => __( 'Maine', 'woocommerce' ), 'MD' => __( 'Maryland', 'woocommerce' ), 'MA' => __( 'Massachusetts', 'woocommerce' ), 'MI' => __( 'Michigan', 'woocommerce' ), 'MN' => __( 'Minnesota', 'woocommerce' ), 'MS' => __( 'Mississippi', 'woocommerce' ), 'MO' => __( 'Missouri', 'woocommerce' ), 'MT' => __( 'Montana', 'woocommerce' ), 'NE' => __( 'Nebraska', 'woocommerce' ), 'NV' => __( 'Nevada', 'woocommerce' ), 'NH' => __( 'New Hampshire', 'woocommerce' ), 'NJ' => __( 'New Jersey', 'woocommerce' ), 'NM' => __( 'New Mexico', 'woocommerce' ), 'NY' => __( 'New York', 'woocommerce' ), 'NC' => __( 'North Carolina', 'woocommerce' ), 'ND' => __( 'North Dakota', 'woocommerce' ), 'OH' => __( 'Ohio', 'woocommerce' ), 'OK' => __( 'Oklahoma', 'woocommerce' ), 'OR' => __( 'Oregon', 'woocommerce' ), 'PA' => __( 'Pennsylvania', 'woocommerce' ), 'RI' => __( 'Rhode Island', 'woocommerce' ), 'SC' => __( 'South Carolina', 'woocommerce' ), 'SD' => __( 'South Dakota', 'woocommerce' ), 'TN' => __( 'Tennessee', 'woocommerce' ), 'TX' => __( 'Texas', 'woocommerce' ), 'UT' => __( 'Utah', 'woocommerce' ), 'VT' => __( 'Vermont', 'woocommerce' ), 'VA' => __( 'Virginia', 'woocommerce' ), 'WA' => __( 'Washington', 'woocommerce' ), 'WV' => __( 'West Virginia', 'woocommerce' ), 'WI' => __( 'Wisconsin', 'woocommerce' ), 'WY' => __( 'Wyoming', 'woocommerce' ), 'AA' => __( 'Armed Forces (AA)', 'woocommerce' ), 'AE' => __( 'Armed Forces (AE)', 'woocommerce' ), 'AP' => __( 'Armed Forces (AP)', 'woocommerce' ), 'AS' => __( 'American Samoa', 'woocommerce' ), 'GU' => __( 'Guam', 'woocommerce' ), 'MP' => __( 'Northern Mariana Islands', 'woocommerce' ), 'PR' => __( 'Puerto Rico', 'woocommerce' ), 'UM' => __( 'US Minor Outlying Islands', 'woocommerce' ), 'VI' => __( 'US Virgin Islands', 'woocommerce' ), ); return $states; }

Verkaufen Sie nur an einen Staat

Dies ist ein Beispiel für den obigen Code. Angenommen, Sie verkaufen frische Produkte und möchten nur in Ihrem Heimatstaat verkaufen.

Weil Sie frische Produkte wie Obst und Gemüse verkaufen und kein geeignetes Liefersystem haben, um das ganze Land zu beliefern.

Angenommen, Sie kommen für dieses Beispiel aus dem Bundesstaat Kalifornien. Mit dem folgenden Code können Sie alle anderen Bundesstaaten außer Kalifornien entfernen.

 // Only one state. example California in the US add_filter( 'woocommerce_states', 'wpglorify_restrict_states' ); function wpglorify_restrict_states( $states ) { $states['US'] = array( 'CA' => __( 'California', 'woocommerce' ), ); return $states; }

Wenn Kunden jetzt zur Checkout-Seite gehen, sehen sie nur Kalifornien in den Adress-Dropdown-Optionen und keine anderen Bundesstaaten.


Beschränken Sie Staaten von jedem anderen Land

Diese Lösung ist nicht nur für die Vereinigten Staaten, egal aus welchem ​​Land Sie kommen, Sie müssen nur Länder- und Staatsnamen und -codes ersetzen.

Hier ist ein Beispiel aus Australien

 /** * list of Australian states to sell */ add_filter( 'woocommerce_states', 'wpglorify_restrict_states' ); function wpglorify_restrict_states( $states ) { $states['AU'] = array( 'ACT' => __( 'Australian Capital Territory', 'woocommerce' ), 'NSW' => __( 'New South Wales', 'woocommerce' ), 'NT' => __( 'Northern Territory', 'woocommerce' ), 'QLD' => __( 'Queensland', 'woocommerce' ), 'SA' => __( 'South Australia', 'woocommerce' ), 'TAS' => __( 'Tasmania', 'woocommerce' ), 'VIC' => __( 'Victoria', 'woocommerce' ), 'WA' => __( 'Western Australia', 'woocommerce' ), ); return $states; }

Ich habe die Liste fast aller Ländercodes zusammengestellt und auch die Bundesstaaten einiger Länder aufgenommen, damit Sie hier Ihre Länder- und Bundesstaatscodes finden können.

WIE MAN PHP-CODE HINZUFÜGT

Das Code-Snippets-Plugin macht es sehr einfach, nicht nur PHP-Snippets zu Ihrer Website hinzuzufügen, sondern auch alle von Ihnen hinzugefügten Snippets zu verwalten.

Sie können bestimmte Snippets aktivieren und deaktivieren und sogar Notizen darüber hinzufügen, was sie tun. Es hat sogar eine bessere Fehlerbehandlung, um die PHP-Fehlerszenarien zu vermeiden.

Um es zu installieren, gehen Sie einfach zu Plugins > Neu hinzufügen und suchen Sie nach Code Snippets .

Der traditionelle oder normale Weg, PHP-Snippets zu Ihrem Design hinzuzufügen, besteht darin, sie direkt in die Datei functions.php Ihres Designs einzufügen.

Stellen Sie jedoch sicher, dass Sie ein untergeordnetes Design verwenden, da Sie sonst alle Änderungen verlieren, sobald Sie Ihr Design aktualisieren.