Dall'aggiornamento all'ultima versione di Magento, ho notato che una nuova voce è apparsa sulla pagina di checkout chiedendo il secondo nome / iniziale dei clienti.
Come rimuovo la voce "Secondo nome / iniziale" dalla pagina di pagamento?
Dall'aggiornamento all'ultima versione di Magento, ho notato che una nuova voce è apparsa sulla pagina di checkout chiedendo il secondo nome / iniziale dei clienti.
Come rimuovo la voce "Secondo nome / iniziale" dalla pagina di pagamento?
Risposte:
Ho avuto lo stesso problema durante l'aggiornamento a Magento CE 1.9.2.1 da Magento CE 1.9.2.0 . L'aggiornamento ha causato la visualizzazione di Secondo nome, ma quando ho controllato l'amministratore System > Configuration > Customers > Customer Configuration > Name and Address Options
l'impostazione "Mostra secondo nome (iniziale)" visualizzava già "No", che è quello che volevo. Ho cambiato l'impostazione su "Sì" e poi di nuovo su "No" prima di fare clic su "Salva configurazione", e questo ha immediatamente rimosso il secondo nome / iniziale dal checkout quando ho aggiornato la pagina.
Nel mio caso, sto lavorando per aggiornare un negozio da Magento 1.8.x a Magento 1.9.x. È nel mio ambiente di sviluppo che ho aggiornato da 1.9.2.0 a 1.9.2.1. Per aggiornare il sito live all'avvio dell'aggiornamento da 1.8.xa 1.9.x, dovremo aggiornare molte delle impostazioni di amministrazione, che prevediamo di eseguire direttamente nel database con una query. Nel database, puoi vedere come Magento modifica l'impostazione del secondo nome.
La tabella `core_config_data` gestisce le impostazioni dell'amministratore per" Mostra secondo nome (iniziale) con il record dove `core_config_data`.`path`='customer/address/middlename_show'
.
Questo record contiene l'impostazione nel campo `value` (0 =" No ", 1 =" Sì "). Questo campo non viene modificato quando appare il secondo nome aggiornando a Magento CE 1.9.2.1 . Se salvi una modifica a "Mostra secondo nome (iniziale)" nelle impostazioni di amministrazione dopo che Magento ha apportato modifiche durante l'aggiornamento a 1.9.2.1, cambierà qui il valore `core_config_data`.
L'aggiornamento a 1.9.2.1 non ha modificato il record su `core_config_data`, e quindi ciò che viene visualizzato nelle impostazioni di amministrazione. Tuttavia, l'aggiornamento modifica un record diverso di una tabella diversa.
Nelle mie numerose istanze di sviluppo di Magento, la tabella `eav_attribute` ha 2" secondo nome "` attributi_code` (s), gli attributi_id` sono 6 e 21 . La tabella `customer_eav_attribute` imposta la visibilità dell'attributo con un campo` is_visible`.
`is_visible` = 0
. `is_visible` = 1
.`is_visible`=0
nuovo e il campo Secondo nome / Iniziale è scomparso dalla cassa.L' aggiornamento Magento CE 1.9.2.1 ha capovolto l'impostazione del secondo nome nella tabella `customer_eav_attribute` senza influire su ciò che viene visualizzato nell'amministratore Magento sotto l'impostazione" Mostra secondo nome (iniziale) ". Puoi risolverlo nel modo in cui l'impostazione viene normalmente regolata nell'amministratore, senza apportare modifiche di vasta portata al modello, attivando l'impostazione "Mostra secondo nome (iniziale)".
Se per qualche motivo è necessario trasferire questa impostazione dell'amministratore su più copie di un negozio o in un batch di aggiornamenti dell'amministratore, ad esempio durante l'aggiornamento di un negozio in modo che corrisponda a un ambiente di sviluppo ... Per questa impostazione è possibile utilizzare la seguente istruzione SQL ( purché tu sappia che "secondo nome" è "attributo_id" 6 e 21. nel tuo negozio. Questo è standard per Magento, ma per sicurezza, controlla prima la tua tabella "eav_attribute`.).
UPDATE customer_eav_attribute SET is_visible = 0 WHERE attribute_id IN (6, 21);
L'opzione di configurazione del sistema ha un modello di backend ( Mage_Adminhtml_Model_System_Config_Backend_Customer_Show_Customer
) il cui _afterSave
metodo apporta la stessa modifica all'attributo EAV del cliente (tabella:) customer_eav_attribute
.
Il valore dell'opzione di configurazione del sistema e il is_visible
valore dell'attributo EAV potrebbero non essere necessariamente sincronizzati (a causa di un aggiornamento di Magento o se l'opzione di configurazione è stata modificata a livello di codice o per qualsiasi altro motivo).
Lanciando l'interruttore un paio di volte lo risolverai o, se sei come me e usi gli script di installazione / aggiornamento per tutto, puoi fare quanto segue:
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();
La via più facile:
Magento ver. 1.9.2.1
System > Configuration > Customers > Customer configuration > Name and Address Options
Show Middle Name (initial)
= No
Rimuovere {{depend middlename}}{{var middlename}}
come suggerisce @sr_magento nella sua risposta non rimuove effettivamente il Show Middle Name (initial)
campo dalla pagina di pagamento stessa. Lo rimuove solo dalle aree in cui le informazioni sull'indirizzo del cliente vengono visualizzate / stampate, come nell'area di amministrazione, i modelli di PDF e e-mail.
Non è necessario rimuovere il campo dai modelli e-mail. Questo è eccessivo e dovresti aggiungere di nuovo quelle voci ai modelli di e-mail nel caso in cui decidi di abilitarle Show Middle Name(initial)
in futuro.
Ho notato anche questo problema tecnico , dopo l'aggiornamento da Magento CE 1.9.2.0 a Magento CE 1.9.2.1 utilizzando il downloader di Magento. L'aggiornamento sembra regolare l'impostazione per Show Middle Name (initial)
under
System > Configuration > Customers > Customer Configuration > Name and Address Options
da "No" a "Sì" . Mi è successo in diversi negozi su server diversi.
Per annullare questa operazione è sufficiente ripristinarlo su "No" e salvare la configurazione. Il Show Middle Name (initial)
campo non verrà più visualizzato nella pagina di pagamento.
Address Templates
like suggerito non modifica i campi di input della pagina di checkout nel frontend del negozio. Ha effetto solo sui modelli per la stampa di indirizzi. Si prega di leggere la seguente documentazione . Hai ragione sulle aree dei clienti nel pannello di amministrazione. Riformulerò questa parte della mia risposta.