2017 © Pedro Peláez
 

magento-module magento-customer-php_71

Personalização dos formulários de clientes

image

mozgbrasil/magento-customer-php_71

Personalização dos formulários de clientes

  • Friday, July 27, 2018
  • by mozgbrasil
  • Repository
  • 1 Watchers
  • 0 Stars
  • 5 Installations
  • HTML
  • 1 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 67 % Grown

The README.md

valid XHTML, (*1)

Mozg\Customer

Sinopse

Personalização dos formulários de clientes, (*2)

Demonstração

Clique para visualizar o vídeo, (*3)

Motivação

Atender o mercado de módulos para Magento oferecendo melhorias e um excelente suporte, (*4)

Suporte / Dúvidas

Para obter o devido suporte Clique aqui, relatando o motivo da ocorrência o mais detalhado possível e anexe o print da tela para nosso entendimento, (*5)

Preço

Clique aqui, (*6)

Recursos

  • Montagem de formulário personalizado, (*7)

  • Suporte a máscaras, (*8)

  • Suporte a validadores, (*9)

  • Preenchimento do endereço pelo CEP, (*10)

  • Checagem de documento "CPF" ou "CNPJ" impedindo registro duplicado, (*11)

Suporte / Dúvidas

Para obter o devido suporte Clique aqui, relatando o motivo da ocorrência o mais detalhado possível e anexe o print da tela para nosso entendimento, (*12)

Preço

Clique aqui, (*13)

Testando na Heroku

Gostaria de apresentar o aplicativo que disponibilizei para a plataforma Heroku, (*14)

Com apenas 1 clique, o aplicativo cria sua loja virtual usando a plataforma de comércio eletrônico Magento e instala os módulos da MOZG, (*15)

https://github.com/mozgbrasil/heroku-magento#descrição, (*16)

Instalação - Atualização - Desinstalação - Desativação

--, (*17)

Sugiro "printar" as telas com todos os procedimentos executados, (*18)

Envie para nós as imagens das telas na eventualidade de quaisquer dificuldades, (*19)

--, (*20)

Este módulo destina-se a ser instalado usando o Composer, (*21)

Execute o seguinte comando no terminal, para visualizar a existencia do Composer e sua versão, (*22)

composer --version

Caso não tenha o Composer em seu ambiente, sugiro ler o seguinte artigo Clique aqui, (*23)

--, (*24)

É necessário que o servidor tenha o suporte a extensão ionCube PHP Loader, (*25)

Para visualizar a existência da extensão nesse ambiente denominado PHP CLI, execute o seguinte comando no terminal, (*26)

php -v

Para visualizar se essa extensão está ativa em seu servidor no ambiente denominado PHP WEB, (*27)

Certique se da presença do arquivo phpinfo.php na raiz do seu projeto, (*28)

<?php phpinfo(); ?>

Caso não exista o arquivo phpinfo.php na raiz do projeto Magento, crie o mesmo adicionado o conteúdo acima, (*29)

Acesse o arquivo pelo browser, (*30)

Em seguida pesquise pelo termo "ionCube PHP Loader", (*31)

Caso o seu servidor não tenha o suporte a extensão, entre em contato com sua empresa de hospedagem e peça para que eles ativem a extensão, (*32)

Caso tenha a permissão e queira ativar a extensão, Clique aqui, (*33)

Em "Loader Downloads API", efetue download do pacote compatível com o seu servidor, (*34)

Descompacte o pacote e faça upload do arquivo "loader-wizard.php" para seu servidor, onde será demonstrado o passo a passo para a ativação da extensão, (*35)

Clique aqui para ver os processos executados, (*36)

--, (*37)

Na presença do "ionCube PHP Loader" efetue o download do seguinte arquivo e coloque na raiz do seu servidor e acesse, se funcionar quer dizer que o "ionCube" está lendo esse tipo de encriptação, (*38)

https://raw.githubusercontent.com/mozgbrasil/heroku-magento/master/phpinfo-ioncube-encoder10-x86-64-php_71.php, (*39)

--, (*40)

Para utilizar o(s) módulo(s) da MOZG é necessário aceitar o Acordo de licença do usuário final, (*41)

--, (*42)

Sugiro manter um ambiente de testes para efeito de testes e somente após os devidos testes aplicar os devidos procedimento no ambiente de produção, (*43)

--, (*44)

Sugiro efetuar backup da plataforma Magento e do banco de dados, (*45)

--, (*46)

Antes de efetuar qualquer atualização no Magento sempre mantenha o Compiler e o Cache desativado, (*47)

--, (*48)

Certique se da presença do arquivo composer.json na raiz do seu projeto Magento e que o mesmo tenha os parâmetros semelhantes ao modelo JSON abaixo, (*49)

{
  "minimum-stability": "dev",
  "prefer-stable": true,
  "license": [
    "proprietary"
  ],
  "repositories": [
    {
      "type": "composer",
      "url": "https://packages.firegento.com"
    }
  ],
  "extra": {
    "magento-root-dir": "./",
    "magento-deploystrategy": "copy",
    "magento-force": true
  }
}

Caso não exista o arquivo composer.json na raiz do projeto Magento, crie o mesmo adicionado o conteúdo acima, (*50)

Para instalar o módulo execute o comando a seguir no terminal do seu servidor no diretório do seu projeto

composer require mozgbrasil/magento-customer-php_71:dev-master

Você pode verificar se o módulo está instalado, indo ao backend em:, (*51)

STORES -> Configuration -> ADVANCED/Advanced -> Disable Modules Output

--, (*52)

Para atualizar o módulo execute o comando a seguir no terminal do seu servidor no diretório do seu projeto

Antes de efetuar qualquer processo que envolva atualização no Magento é recomendado manter o Compiler e Cache desativado, (*53)

composer update

Na ocorrência de erro, renomeie a pasta /vendor/mozgbrasil e execute novamente, (*54)

Para checar a data do módulo execute o seguinte comando, (*55)

grep -ri --include=*.json 'time": "' ./vendor/mozgbrasil

--, (*56)

Para desinstalar o módulo execute o comando a seguir no terminal do seu servidor no diretório do seu projeto

composer remove mozgbrasil/magento-customer-php_71

--, (*57)

Para desativar o módulo

  1. Antes de efetuar qualquer processo que envolva atualização sobre o Magento é necessário manter o Compiler e Cache desativado, (*58)

  2. Caso queira desativar os módulos da MOZG renomeie a seguinte pasta app/code/local/Mozg, (*59)

A desativação do módulo pode ser usado para detectar se determinada ocorrência tem relação com o módulo, (*60)

--, (*61)

Como configurar o método

Para configurar o método, acesse no backend em:, (*62)

∞ MOZG ∞ -> Cadastro de Clientes -> Cadastro de Clientes - (powered by MOZG)

Você terá os campos a seguir, (*63)

Ativar campos de endereço em /customer/account/create/

Exibe os devidos campos relativo ao endereço, (*64)

Ativar suporte aos formulários

Ao ativar o recurso deve ser utilizado o template presente no módulo, podemos visualizar que no template temos:, (*65)

  • Mascara aos campos: zip "cep", telephone, fax, taxvat "geralmente usado para armazenar o cpf ou cnpj", cpf "modelo de possível novo atributo", cnpj "modelo de possível novo atributo", (*66)

  • Validador aos campos: zip, street_1, cpf, cnpj, taxvat, (*67)

  • Preenchimento do endereço pelo CEP, (*68)

  • Preenchimento automático para testes, (*69)

  • Reordenação de campos, (*70)

Armazenamento do endereço

O procedimento de separar o número do endereço do campo "street1" não é uma prática nativa do Magento, (*71)

Quando instalado o Magento com banco de dados demonstrativo não vemos no registro de clientes essa pratica de separar o número do endereço, (*72)

Vemos preenchido para o campo "street1" da seguinte forma, (*73)

10441 Jefferson Blvd, Suite 200

Representando o logradouro o numero e nesse caso também o complemento, ambas informações armazenada no atributo "street1", (*74)

Na forma nativa do Magento, (*75)

É feito o armazenamento da seguinte forma, (*76)

logradouro_com_numero_complemento = getStreet(1)
bairro = getStreet(2)
complemento/referencia = getStreet(3)
complemento/referencia = getStreet(4)

Para projetos que tem o número do endereço armazenado no campo street2, (*77)

Pode ser usado o recurso presente no módulo de usar a opção "armazenamento separado", (*78)

Nesse caso o nosso módulo deve ler os armazenamentos da seguinte forma, (*79)

logradouro = getStreet(1)
numero = getStreet(2)
complemento/referencia = getStreet(3)
bairro = getStreet(4)

Conheço 1 projeto que adota o armazenamento alternativo como é o caso do módulo "Inovarti_Onestepcheckout", (*80)

É feito o armazenamento da seguinte forma, (*81)

logradouro = getStreet(1)
numero = getStreet(2)
complemento/referencia = getStreet(3)
bairro = getStreet(4)

Conforme, (*82)

https://github.com/deivisonarthur/OSC-Magento-Brasil-6-Pro#tutoriais-e-observações, (*83)

A opção armazenamento padrão

Armazena nos 2 campos nativos com os seguintes rótulos:, (*84)

  • Para o primeiro campo nativo *

endereço, numero, complemento, (*85)

  • Embora seja criado exibido 3 campos fictícios o armazenamento é feito no primeiro campo nativo de endereço no Magento, (*86)

  • Para o segundo campo nativo, (*87)

bairro, (*88)

A opção armazenamento separado

No uso dessa opção, acesse no backend em:, (*89)

Sistema -> Configuração -> Clientes -> Configuração -> Opções de Nome e Endereço

Altere para o campo "Número de linhas em um endereço de rua" para 4, (*90)

Armazena nos 4 campos nativos com os seguintes rótulos:, (*91)

  • Para o primeiro campo nativo

endereço, (*92)

  • Para o segundo campo nativo

numero, (*93)

  • Para o terceiro campo nativo

complemento, (*94)

  • Para o quarto campo nativo

bairro, (*95)

Perguntas mais frequentes "FAQ"

Como funciona o preenchimento do endereço pelo CEP

Para o retorno dos dados do endereço através do CEP, (*96)

É feito requisição ao serviço http://republicavirtual.com.br, (*97)

Se não houver retorno é feito requisição ao método "consultaCEP" do Correios, (*98)

O módulo é compatível com o Bling quando importado do Magento

No Magento o atributo "taxvat" é geralmente usado para armazenar documentos como CPF/CNPJ, (*99)

Nosso módulo faz o uso desse atributo para os formularios de registros !, (*100)

Como ocultar o campo "País"

**, (*101)

Deve ser editado o arquivo CSS do template adicionando os seguintes itens, (*102)

#li-billing-country_id { display:none }
#li-shipping-country_id { display:none }

**, (*103)

Vemos que pelo módulo da MOZG é disponibilizado o seguinte arquivo, que se encontra vazio, (*104)

/skin/frontend/base/default/css/mozg_base/style.css, (*105)

**, (*106)

Para o template RWD, deve ser criado o seguinte arquivo, com devido conteudo, (*107)

/skin/frontend/rwd/default/css/mozg_base/style.css, (*108)

**, (*109)

Para o template PORTO, deve ser criado o seguinte arquivo, com devido conteudo, (*110)

/skin/frontend/smartwave/porto/css/mozg_base/style.css, (*111)

**, (*112)

E assim sucessivamente, (*113)

**, (*114)

Como adicionar novos atributos ao formulário

1), (*115)

Pode ser utilizado qualquer módulo de terceiros para a criação de atributos de clientes, (*116)

https://www.magentocommerce.com/magento-connect/catalogsearch/result/?id=&s=7&pl=0&eb=0&hp=0&q=customer+attribute&t=1&p=1, (*117)

Caso queira utilize esse que está nessa lista como 1 dos mais relevantes nesse quesito, (*118)

https://www.magentocommerce.com/magento-connect/manage-customer-attributes-1.html, (*119)

composer require connect20/clarion_customerattribute

No uso do módulo CustomerAttribute, (*120)

Podemos acessar o recurso pelo menu no backend do Magento: Clientes -> Gerenciar atributos, (*121)

Tenha cautela no uso desse recurso, (*122)

Recomendo o uso apenas para a criação de novos atributos, (*123)

Como os módulos de gerenciamento de atributos "free" não oferece de forma gratuita o recurso de salvar os atributos no /checkout/ o nosso módulo contem recurso para essa necessidade, (*124)

2), (*125)

Para aplicar o suporte do novo atributo ao formulário, (*126)

Deve ser inserido no formulário o campo tendo o mesmo identificador usado na criação do atributo, (*127)

Para a exibição de algum atributo contendo algum tipo de condição sempre será necessário escrever a devida programação, nessa necessidade me informe sua necessidade, (*128)

Clique para visualizar o vídeo, (*129)

Como personalizar o formulário de criação de conta em /customer/account/create/

Deve ser ativado o Debug nativo do Magento a fim de ser exibido o caminho do arquivo phtml, (*130)

Caso tenha o módulo CustomerAttribute, edite na configuração do módulo para desativar, pois esse módulo aplicado o suporte aos formulários, (*131)

Nunca devemos editar o arquivo disponibilizado pelo módulo, pois quando houver uma atualização o mesmo será sobrescrito, (*132)

Devemos criar a mesma estrutura de diretório para o nosso template, (*133)

Você deve levar em consideração o caminho exibido no debug do seu projeto, (*134)

Como o debug ativo em meu projeto exibiu o seguinte caminho, (*135)

frontend/base/default/template/mozg_customer/customer/form/register.phtml, (*136)

Nessa pasta temos o arquivo modelo que iremos usar como base, (*137)

E o template nativo está localizado em, (*138)

/app/design/frontend/rwd/default/template, (*139)

Então devo ter a seguinte estrutura, (*140)

/app/design/frontend/rwd/default/template/mozg_customer/customer/form/register.phtml, (*141)

Como personalizar o formulário de criação de conta em /customer/account/edit/

Deve ser ativado o Debug nativo do Magento a fim de ser exibido o caminho do arquivo phtml, (*142)

Caso tenha o módulo CustomerAttribute, edite na configuração do módulo para desativar, pois esse módulo aplicado o suporte aos formulários, (*143)

Nunca devemos editar o arquivo disponibilizado pelo módulo, pois quando houver uma atualização o mesmo será sobreescrevido, (*144)

Devemos criar a mesma estrutura de diretório para o nosso template, (*145)

Você deve levar em consideração o caminho exibido no debug do seu projeto, (*146)

Como o debug ativo em meu projeto exibiu o seguinte caminho, (*147)

frontend/base/default/template/mozg_customer/customer/form/edit.phtml, (*148)

Nessa pasta temos o arquivo modelo que iremos usar como base, (*149)

E o template nativo está localizado em, (*150)

/app/design/frontend/rwd/default/template, (*151)

Então devo ter a seguinte estrutura, (*152)

/app/design/frontend/rwd/default/template/mozg_customer/customer/form/edit.phtml, (*153)

Como personalizar o formulário de criação de conta em /checkout/

Deve ser ativado o Debug nativo do Magento a fim de ser exibido o caminho do arquivo phtml, (*154)

Caso tenha o módulo CustomerAttribute, edite na configuração do módulo para desativar, pois esse módulo aplicado o suporte aos formulários, (*155)

Nunca devemos editar o arquivo disponibilizado pelo módulo, pois quando houver uma atualização o mesmo será sobreescrevido, (*156)

Devemos criar a mesma estrutura de diretório para o nosso template, (*157)

Você deve levar em consideração o caminho exibido no debug do seu projeto, (*158)

1., (*159)

Como o debug ativo em meu projeto exibiu o seguinte caminho, (*160)

frontend/base/default/template/mozg_customer/persistent/checkout/onepage/billing.phtml, (*161)

Nessa pasta temos o arquivo modelo que iremos usar como base, (*162)

E o template nativo está localizado em, (*163)

/app/design/frontend/rwd/default/template, (*164)

Então devo ter a seguinte estrutura, (*165)

/app/design/frontend/rwd/default/template/mozg_customer/persistent/checkout/onepage/billing.phtml, (*166)

2., (*167)

Como o debug ativo em meu projeto exibiu o seguinte caminho, (*168)

frontend/base/default/template/mozg_customer/checkout/onepage/shipping.phtml, (*169)

Nessa pasta temos o arquivo modelo que iremos usar como base, (*170)

E o template nativo está localizado em, (*171)

/app/design/frontend/rwd/default/template, (*172)

Então devo ter a seguinte estrutura, (*173)

/app/design/frontend/rwd/default/template/mozg_customer/checkout/onepage/shipping.phtml, (*174)

Como instalar o módulo de compra em 1 passo

Acesse, (*175)

https://github.com/mozgbrasil/magento-iwd-opc#mozgiwd_opc, (*176)

Como alterar a tradução de algum campo ?

Caso queira alterar a tradução de algum campo utilize a ferramenta nativa do Magento "tradução em linha" indo ao backend em:, (*177)

STORES -> Configuration -> ADVANCED/Developer -> Translate Inline

Modificando a tradução do módulo para o template

Cada módulo tem o seu arquivo de tradução com a mesma nomenclatura do módulo, (*178)

Os arquivos de tradução para português do Brasil no Magento é armazenado no diretório, (*179)

/app/locale/pt_BR/

Recomendo não editar os arquivos nesse diretório pois em uma nova atualização de módulo esse arquivo deve ser atualizado com as informações do módulo, (*180)

Na necessidade de trocar algum item, (*181)

Edite o arquivo translate.csv presente no diretório do seu template para ser exibido um novo resultado, (*182)

/app/design/frontend/default/default/locale/pt_BR/translate.csv

Caso não exista a estrutura "/locale/pt_BR/translate.csv" em seu template apenas crie o arquivo nessa estrutura de diretório, (*183)

Obs., (*184)

No Windows ou Mac sugiro usar o programa UltraEdit para edição do arquivo, dessa forma será mantido a codificação do arquivo em UTF-8, (*185)

Sobre o campo "Profissão"

Informo que tem alguns item no pacote de tradução do MarioSam que está equivocado em, (*186)

/app/locale/pt_BR/Mage_Api2.csv:"Company","Profissão"
/app/locale/pt_BR/Mage_Customer.csv:"Company","Profissão"
/app/locale/pt_BR/Mage_Checkout.csv:"Company","Profissão", (*187)

Edite os arquivos e atualize "Profissão" para "Empresa", (*188)

Sobre separação e armazenamento dos dados de endereço

O nosso módulo contem a separação dos dados de endereço, (*189)

Mas o armazenamento é feito no padrão nativo do Magento, (*190)

Armazenando da seguinte forma, (*191)

Para o atributo de endereço de clientes, (*192)

"street_1" = logradouro com número e/ou complemento, (*193)

"street_2" = Bairro, (*194)

Quando utilizado o banco de dados demonstrativo ou "sample_data", (*195)

Vemos preenchido para o campo "street_1", (*196)

10441 Jefferson Blvd, Suite 200, (*197)

Representando o número o logradouro e nesse caso também o complemento, ambas informações armazenada no atributo "street_1", (*198)

Eu não recomendo o procedimento que seria separar o número do endereço para o atributo "street_2" pois pode gerar problemas de formatação e em integrações, (*199)

Contribuintes

Equipe Mozg, (*200)

License

Comercial License, (*201)

Badges

Join the chat at https://gitter.im/mozgbrasil Latest Stable Version Total Downloads Latest Unstable Version License Monthly Downloads Daily Downloads Reference Status Dependency Status, (*202)

:cat2:, (*203)

The Versions

27/07 2018

dev-master

9999999-dev http://mozg.com.br

Personalização dos formulários de clientes

  Sources   Download

proprietary

The Requires

 

form attributes magento customer cerebrum mozg

01/03 2018

1.0.0

1.0.0.0 http://mozg.com.br

Personalização dos formulários de clientes

  Sources   Download

proprietary

The Requires

 

form attributes magento customer cerebrum mozg