Magento'nun en son sürümüne geçtikten sonra, ödeme sayfasında müşterilerin ikinci adını / baş harfini soran yeni bir girişin göründüğünü fark ettim.
"İkinci ad / adi" girişini ödeme sayfasından nasıl kaldırabilirim?
Magento'nun en son sürümüne geçtikten sonra, ödeme sayfasında müşterilerin ikinci adını / baş harfini soran yeni bir girişin göründüğünü fark ettim.
"İkinci ad / adi" girişini ödeme sayfasından nasıl kaldırabilirim?
Yanıtlar:
Güncelleme ne zaman aynı sorunu vardı Magento CE 1.9.2.1 den Magento CE 1.9.2.0 . Güncelleme İkinci Adın görüntülenmesine neden oldu, ancak yöneticiye baktığımda System > Configuration > Customers > Customer Configuration > Name and Address Options
" İkinci Adı Göster (başlangıç)" ayarında zaten "Hayır" görüntüleniyordu - istediğim buydu. Ayarı "Evet" olarak değiştirdim ve "Yapılandırmayı Kaydet" i tıklamadan önce tekrar "Hayır" olarak değiştirdim.
Benim durumumda, bir mağazayı Magento 1.8.x'ten Magento 1.9.x'e güncellemek için çalışıyorum. Geliştirme ortamımda 1.9.2.0'dan 1.9.2.1'e güncelledim. 1.8.x'den 1.9.x'e yükseltmeyi başlattığımızda canlı siteyi güncel hale getirmek için, doğrudan veritabanında bir sorgu ile yapmayı planladığımız birçok yönetici ayarını güncellememiz gerekecek. Veritabanında, Magento'nun İkinci Ad ayarını nasıl değiştirdiğini görebilirsiniz.
`Core_config_data` tablosu," İkinci Adı Göster (başlangıç) için yönetici ayarını burada kayıtla işler `core_config_data`.`path`='customer/address/middlename_show'
.
Bu kayıt `değer` alanındaki ayarı tutar (0 =" Hayır ", 1 =" Evet "). Magento CE 1.9.2.1'e yükseltilerek ikinci ad göründüğünde bu alan değiştirilmez . Magento güncelleme sırasında 1.9.2.1 olarak değişiklik yaptıktan sonra yönetici ayarlarında "İkinci Adı Göster (başlangıç)" 'a bir değişiklik kaydederseniz, burada `core_config_data` değerini değiştirecektir.
1.9.2.1'e yapılan güncelleme `core_config_data` üzerindeki kaydı ve dolayısıyla yönetici ayarlarında görüntülenen kaydı değiştirmedi. Ancak, güncelleştirme farklı bir tablonun farklı bir kaydını değiştirir.
Magento'nun birçok geliştirici örneğimde, `eav_attribute` tablosunda 2" orta ad "` attribute_code` (lar) vardır, `attribute_id` (ler) 6 ve 21'dir . `Customer_eav_attribute` tablo bir saha` is_visible` ile öznitelik görünmez yapar.
`is_visible` = 0
. `is_visible` = 1
.`is_visible`=0
Ad / Başlangıç alanı Checkout'tan kayboldu.Magento CE 1.9.2.1 güncellemesi göster "İkinci Ad (Başlangıç)" ayarı altında Magento yönetici görüntülenen ne etkilemeden `customer_eav_attribute` tablosundaki Göbek Adı ayarını çevirdi. "Orta Adı Göster (Başlangıç)" ayarını değiştirerek, geniş kapsamlı şablon ayarlamaları yapmadan ayarın yönetici tarafından normal olarak ayarlandığı şekilde düzeltebilirsiniz.
Herhangi bir nedenle bu yönetici ayarını bir mağazanın birden çok kopyasıyla veya bir mağaza geliştiricisiyle eşleştirmek için yükseltme yaparken olduğu gibi bir dizi yönetici güncellemesine aktarmanız gerekiyorsa ... Bu ayar için aşağıdaki SQL ifadesini kullanabilirsiniz ( "orta ad" ın mağazanızdaki `attribute_id` 6 ve 21. olduğunu biliyorsanız, bu Magento için standarttır, ancak güvenli olmak için önce" eav_attribute "tablonuzu iki kez kontrol edin.).
UPDATE customer_eav_attribute SET is_visible = 0 WHERE attribute_id IN (6, 21);
Sistem yapılandırma seçeneği, yöntemi müşteri EAV özniteliğinde aynı değişikliği yapan bir arka uç modeline ( Mage_Adminhtml_Model_System_Config_Backend_Customer_Show_Customer
) sahiptir _afterSave
(tablo:) customer_eav_attribute
.
Sistem yapılandırma seçeneği değeri ve EAV öznitelik is_visible
değeri mutlaka senkronize olmayabilir (Magento yükseltmesi nedeniyle veya yapılandırma seçeneği programlı olarak değiştirildiyse veya başka bir nedenle).
Anahtarı birkaç kez çevirmek onu düzeltir veya benim gibi ve her şey için yükleme / yükseltme komut dosyaları kullanıyorsanız, aşağıdakileri yapabilirsiniz:
Mage::getModel('core/config')
->saveConfig('customer/address/middlename_show', 0);
try {
$attribute = Mage::getSingleton('eav/config')
->getAttribute('customer', 'middlename')
->setIsVisible(0)
->save();
$attribute = Mage::getSingleton('eav/config')
->getAttribute('customer_address', 'middlename')
->setIsVisible(0)
->save();
} catch (Exception $e) {
Mage::logException($e);
throw $e;
}
$attribute = Mage::getSingleton('eav/config') ->getAttribute('customer_address', 'middlename') ->setIsVisible(0) ->save();
En kolay yol:
Magento ver. 1.9.2.1
System > Configuration > Customers > Customer configuration > Name and Address Options
Show Middle Name (initial)
= No
{{depend middlename}}{{var middlename}}
@Sr_magento gibi kaldırma , cevabında önerdiği gibi, aslında Show Middle Name (initial)
alanın çıkış sayfasından kaldırılmasını önermez . Bunu yalnızca yönetici adresi, PDF'ler ve e-posta şablonları gibi müşteri adres bilgilerinin oluşturulduğu / yazdırıldığı alanlardan kaldırır.
Alanı e-posta şablonlarından kaldırmanıza gerek yoktur. Bu aşırıdır ve Show Middle Name(initial)
ileride etkinleştirmeye karar vermeniz durumunda bu girişleri e-posta şablonlarına tekrar eklemeniz gerekir .
Ben gelen güncellemeden sonra da bu aksaklık fark etmiş Magento CE 1.9.2.0 için CE 1.9.2.1 Magento Magento downloader kullanarak. Güncelleme Show Middle Name (initial)
altında ayarı değiştiriyor gibi görünüyor
System > Configuration > Customers > Customer Configuration > Name and Address Options
dan "No" için "Evet" . Farklı sunuculardaki birkaç mağazada başıma geldi.
Bunu geri almak için tekrar "Hayır" olarak ayarlayın ve yapılandırmayı kaydedin. Show Middle Name (initial)
Alan artık ödeme sayfasında gösterilecektir.
Address Templates
gibi değiştirmek, mağazanın ön ucundaki Checkout Page giriş alanlarını değiştirmez. Yalnızca adres yazdırma şablonlarını etkiler. Lütfen aşağıdaki belgeleri okuyun . Yönetici panelindeki müşteri alanları hakkında haklısınız. Cevabımın bu kısmını tekrar yazacağım.