Pflichtfeld Telefon in Magento 1.4.2 ändern
In Magento <= 1.4.1 war es noch großer Aufwand ein Pflichtfeld aus dem Checkout herauszunehmen: Man musste mal eben zwei Models überlagern nur damit die doofe Validierung, die in der Abstract zu finden war, deaktiviert werden konnte. In Magento 1.4.2 ist das einfach geworden.
Hier muss einfach nur in der Datenbank in der Tabelle eav_attributes die Spalte ‘is_required’ auf 0 bzw. 1 gesetzt werden und schon weiß Magento ob das Feld nun benötigt wird oder eben nicht. Für den Fall das ihr kein weiteres Attribute (z.B. auf Produktebene) habt das den Attribute-Code ‘telephone’ besitzt geht das wie folgt:
UPDATE `eav_attribute` SET `is_required` = '0' WHERE `eav_attribute`.`attribute_code` = 'telephone';
.. und schon ist Telefon kein Pflichtfeld mehr
Der Autor
Tobias Vogt arbeitet seit 2008 mit Magento und ist seit 2011 durch Magento zertifizierter Entwickler. Beschäftigt ist er bei der code-x GmbH, einer Agentur für Internet und Marketing aus Paderborn. Er gehört zum Gründer-Team der Webguys und ist seit November 2011 Bachelor of Science (Wirtschaftsinformatik). Sie erreichen Ihn per E-Mail unter tobi@webguys.de.




Direkt in die Datenbank? Uff
Ich hab im Admin leider keinen Schalter gefunden, kennst du einen?
Leider nein
Man kann das ganze auch mit dem Pol Attribute Manager deaktivieren
danke für den Tipp. Wie könnte man das in einer Multistore-Umgebung lösen mit 2 Websites? In einem Shop kein Pflichtfeld, im anderen schon, da Lieferungen über Spedition abgewickelt werden. Gibt es dafür eine Lösung?
Hallo,
danke für die Anleitung!
ich habe die SQL-Anweisung in phpmyadmin ausgeführt, allerdings ist mein telefon immer noch pflichtfeld. (Magento 1.5.1.0)
Hat jemand ne Idee?
Danke
Viele Grüße
das Feld Telefon wird nicht mehr als Pflichtfeld von Magento
behandelt, jedoch steht im .phtml noch als Pflichfeld. Dies geschieht durch die
Auszeichnung mit dem class-Zusatz “required”.
Wenn sie dies entfernen, sollte es nicht mehr als Pflichtfeld
behandelt werden. Um dies schnell zu testen, reicht es aus Javascript kurzfristig zu
deaktivieren.
Hallo,
vielen Dank für die Antwort!
ich habe jetzt lange herumprobiert, habe in der Datei app\design\frontend\base\default\template\checkout\onepage\billing.phtml
das telephone-feld dem fax-feld angepasst (das ist ja auch kein pflichtfeld)
Also habe beim label class=”required” und * gelöscht.
Außerdem habe ich beim textfeld class=”input-text required-entry” in class=”input-text” geändert.
Die ganz oben beschriebene Änderung der Tabelle in der Datenbank habe ich auch befolgt.
(Habe Magento 1.5.1.0)
Bin ich in der falschen .phtml-Datei?
Weiß jemand noch einen Rat?
Danke!
bei mir funktioniert es. cache neu aufgebaut?
Bei neueren Magento Versionen schlägt evt. noch die Validierung des Felds fehl. Mit folgendem Schritten habe ich es gelöst:
http://reinoud.net/2011/03/magento-removing-mandatory-validation-of-telephone-field/
[...] http://www.webguys.de/magento/pflichtfeld-telefon-in-magento-1-4-2/ [...]
Da ich grade im Shop eines Kunden kurz am Suchen war – Bei Verwendung der NoRegion Extension sind auch folgende Dateien anzupassen:
app/design/frontend/default/default/noregion/checkout/onepage/billing.phtml
app/design/frontend/default/default/noregion/checkout/onepage/shipping.phtml
app/design/frontend/default/default/template/noregion/customer/address/edit.phtml
Viele Grüße
Kai