xpanium Posted August 10, 2009 Share Posted August 10, 2009 Guia de instalação da tradução para o Prestashop 1.2 final (1.2.0.8)Após você ter instalado o prestashop em um servidor siga os seguintes passos:1º - Entre na sua área de administração (Back Office), feito isso clique na aba de ferramentas (Tools), e clique novamente um pouco mais abaixo em Linguagens (Languages).2º - Feito o passo anterior aparecerá uma tela apenas contendo dois idiomas instalados, o inglês e o francês. Uma observação importante é que esta tradução só funcionará se ela for o 3º idioma por causa de seu ID, então só funcionará se for feita após a instalação do prestashop.3º - Clique sobre Adicionar novo (Add new)4º - Digite no campo Name "Português (Portuguese)" sem aspas, no campo ISO code coloque "BR" sem as aspas, no flag clique em procurar, este flag é a bandeira do Brasil, a novidade é que temos duas opçoes de bandeiras de acordo com sua loja, você vai encontrar estas imagens no pack de instalação no final deste tutorial. Em No-picture image você coloca a mesma imagem do flag. e por fim deixe o status como estar. Clique em Save.5º - A terminar a etapa anterior vai aparecer uma barrinha com a seguinte mensagem "Creation successful" ou seja foi criada com sucesso!6º - Mais abaixo você vai ver que já apresenta a bandeira do Brasil com o seu respectivo nome e um pouco mais a direita um triângulo amarelo indicando que a linguagem ainda não está pronta para usar.7º - Iremos agora importar a linguagem, clique em Translations na mesma aba tools.8º - Abaixo têm Translation exchange - Import a language pack clique no botão arquivo ou file, procure este mesmo arquivo em seu computador com o nome "br.gzip", este é o arquivo com a tradução completa da loja.9º - Clique no botão "import" e aguarde o processamento destas informações.10º - Ao terminar aparecerá uma mensagem mais acima "Translations successfully added" ou seja nossa tradução foi adicionada com sucesso.11º - Feito isso clique na bandeira do brasil no topo da tela para você notar a diferença.12º Agora já temos 95% traduzido, infelizmente as abas ou guia como preferir estão em inglês ainda, para uma rápida tradução disso siga as seguintes instruções do iten 13 em diante.13º - Acesse seu phpmyadmin em seu servidor, após acessar clique sobre a tabela que está sua loja prestashop instalada.14º - Clique na aba sql, vai aparecer um grande espaço em branco aonde você vai colar o conteúdo do arquivo setup. sql veja na imagem abaixo 15º - copei o conteúdo do arquivo setup.sql e cole no espaço em branco que mencionados anteriormente, lembre-se que este arquivo também está no pack no final desta página para download.16º - depois clique em executar e espere por alguns estantes, se por acaso aparecer alguma mensagem de erro pare, não mecha mais, poste aqui o erro.17º - Se tudo ocorrer bem a operação da sua tradução já está 100% completa, basta acessar agora seu ex back office que agora se chama Área Administrativa . Visite seu site também para ver como ficou.18º - Uma ultima dica que em sua Área Administrativa > Ferramentas > Linguagens têm uma opção de você escolher um idioma padrão para sua loja, escolha Português (Portuguese) e clique em salvar. Tópicos relacionados:Instalando o Prestashop 1.0Configurações do arquivo .htaccess[DONWLOADS] Servers para diversas plataformas Demonstrações:Frente da loja traduzida: http://demo.prestashopbr.com/Área administrativa traduzida: http://demo.prestashopbr.com/XxadminxX/usuário: [email protected]senha: 123456789Download :arrow: Download: http://forum.prestashopbr.com/viewtopic.php?f=8&t=595 Link to comment Share on other sites More sharing options...
stefanscott Posted August 14, 2009 Share Posted August 14, 2009 Guia de instalação da tradução para o Prestashop 1.2 final (1.2.0.8)...17º - Se tudo ocorrer bem a operação da sua tradução já está 100% completa, basta acessar agora seu ex back office que agora se chama Área Administrativa . Visite seu site também para ver como ficou.... Ola - Funcionou perfeito, até 17º. O back-end (Área Administrativa) funciona bem - mas quando vou ao front-end (o site) no mesmo navegador, aparece o erro seguinte:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 4 SELECT c.id_cms, cl.link_rewrite, cl.meta_title FROM ps_cms c LEFT JOIN ps_cms_lang cl ON (c.id_cms = cl.id_cms AND cl.id_lang = 1) WHERE c.id_cms IN () Este erro acontece quando visito o "front-end" no mesmo browser (onde já estou "logged in" como Administrador, o seja, com o "cookie" ainda ativo no browser). E também acontence quando visito o "front-end" usando um outro browser (onde não estou "logged in", porque o outro browser não tem o mesmo "cookie" ativo).Deve ser alguma coisa que aconteceu durante a execução do arquivo setup.sql, que mexeu com o banco de dados.Não sei muito PHP, mas fiz muita programação em SQL, e acho que a frase "IN ()" na cláusula "WHERE": WHERE c.id_cms IN () não funciona quando não tem nade entre os paréntesis na frase "IN ()" - e por isso está gerando esse um erro de síntaxe, na linha 4. Vou olhar no código-fonte PHP para ver onde esa frase está sendo construida, pra ver se posso conferir quais valores devem estar presentes entre os paréntesis no final da cláusula "WHERE" na frase "IN ()". Link to comment Share on other sites More sharing options...
stefanscott Posted August 14, 2009 Share Posted August 14, 2009 Fiz um teste em PhpMyAdmin, usando as tres primeiras linhas do "query" que está dando o erro: SELECT c.id_cms, cl.link_rewrite, cl.meta_title FROM ps_cms c LEFT JOIN ps_cms_lang cl ON ( c.id_cms = cl.id_cms AND cl.id_lang =1 ) Ou seja, excluindo a quarta linha, a cláusula "WHERE" WHERE c.id_cms IN () que estava gerando o erro de síntaxe por causa de não ter nada entre os paréntesis.O resultado do "query" foi interessante: id_cms link_rewrite meta_title 1 NULL NULL 2 NULL NULL 3 NULL NULL 4 NULL NULL 5 NULL NULL Ve que os valores nas colunas 'link_rewrite' e 'meta_title' são todos NULL. Isso parece estranho - por quê o programador mencionaria essa colunas, se são NULL?Depois, olhei a outra tabela mencionada no "query" acima - a tabela 'ps_cms_lang' (com abreviatura 'cl' mais tarde no "query"). Atualmente, essa tabela 'ps_cms_lang' contem 5 registros.Fiz um "query" SELECT para ver essa tabela (todas as colunas menos a última, que é muito grande), e deu o resultado seguinte: select `id_cms`, `id_lang`, `meta_title`, `meta_description`, `meta_keywords` from `ps_cms_lang`; +--------+---------+-----------------------------+--------------------------------------+-----------------------------------------------+ | id_cms | id_lang | meta_title | meta_description | meta_keywords | +--------+---------+-----------------------------+--------------------------------------+-----------------------------------------------+ | 1 | 3 | Delivery | Our terms and conditions of delivery | conditions, delivery, delay, shipment, pack | | 2 | 3 | Legal Notice | Legal notice | notice, legal, credits | | 3 | 3 | Terms and conditions of use | Our terms and conditions of use | conditions, terms, use, sell | | 4 | 3 | About us | Learn more about us | about us, informations | | 5 | 3 | Secure payment | Our secure payment mean | secure payment, ssl, visa, mastercard, paypal | +--------+---------+-----------------------------+--------------------------------------+-----------------------------------------------+ 5 rows in set (0.00 sec) Acho que tem erros nessa tabela. Olhe a coluna 'id_lang' - ali sempre tem o valor 3 (que corresponde à lingua BR - português), e não tem nenhum valor 1 (que corresponder à lingua EN - inglês).Acho que essa tabela deveria ter:- ou 10 registros (5 para EN com o valor 1 na coluna 'id_lang', mais 5 para BR com o valor 3 na coluna 'id_lang' - e com texto em português nas outras colunas onde 'id_lang' for 3)- ou só os 5 registros existentes - mas com o valor 1 (em vez do atual valor 3) na coluna 'id_lang' - pois o texto está tudo em inglês ainda. Link to comment Share on other sites More sharing options...
stefanscott Posted August 14, 2009 Share Posted August 14, 2009 Também olhei as otras tabelas que tem nome que termina em '..._lang' no banco de dados depois de executar 'setup.sql', e vi que muitas tem o valor 3 na coluna 'id_lang' e tem texto(s) em ingles na(s) coluna(s) de texto.Acho que isso é errado - deve ter:- ou 1 na coluna 'id_lang' (pois o texto está em ingles naqueles registros)- ou deve ter 2x o número de registros em cada uma dessa tabelas: deve ter registros com 'id_lang' = 1 (EN) e texto em inglês, e mais uns novos registros com 'id_lang' = 3 (BR) e texto em português.As tabelas afetadas são todas as tabelas que tem nome que termina com '..._lang' (e que não sejam vazias). Link to comment Share on other sites More sharing options...
stefanscott Posted August 14, 2009 Share Posted August 14, 2009 OK, agora olhei o arquivo 'setup.sql' e vi o problema seguinte:Os comandos como: DROP TABLE IF EXISTS `ps_order_return_state_lang`; CREATE TABLE IF NOT EXISTS `ps_order_return_state_lang` ( `id_order_return_state` int(10) unsigned NOT NULL, `id_lang` int(10) unsigned NOT NULL, `name` varchar(64) NOT NULL, UNIQUE KEY `order_state_lang_index` (`id_order_return_state`,`id_lang`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; não devem estar nesse arquivo, porque estão excluindo os registros para inglês que ja existiam nas tabelas que tem nome que terminam em '..._lang'.Acho que que quando você gerou esse arquivo 'setup.sql', você ativou a opção "Generate DROP TABLE statements" (Gerar comandos para excluir tabelas). Deve voltar a gerar o arquivo 'setup.sql' com a opção "Generate DROP TABLE statements" desativada, para não excluir os registros para inglês que ja existem no banco de dados, e só acrescentar os registros para português.Isso é um erro comun que pode acontecer no momento de gerar um "script" de SQL como 'arquivo.sql"! Obrigado pela tradução, acho que com essa pequena mudança vai dar tudo certo. :-) Link to comment Share on other sites More sharing options...
stefanscott Posted August 14, 2009 Share Posted August 14, 2009 Ainda bem que eu fiz um "backup" do meu banco de dados antes de executar o arquivo 'setup.sql'.Isso seria uma boca dica para incluir nas instruções, antes do passo 14º ou 15º. :-)Sempre é uma boa idéia fazer um "backup" do banco de dado antes de executar um "script" de SQL.O comando que eu usei para fazer o "backup" em MySQL (usando a linha de comando no meu server, em vez de usar PhpMyAdmin) foi: mysqldump --opt -u root -p{SENHA DO ROOT} {NOME DO BANCO DE DADOS} > {ARQUIVO NOVO PARA O BACKUP}.sql Bota os valores para seu site entre os {...}Obs (1) : O comando acima deve aparecer em uma linha só, e a parte: --opt tem 5 caracteres que devem aparece todos juntos.(O fórum as vezes bota uma quebra de linha quando dentro de uma seção de código ... e fora de uma seção de código muda dois hífens '-' para um travessão ou "em dash".)Obs (2) : O comando -p{SENHA DO ROOT} deve ser escrito tudo junto, sem espaço entre a parte '-p' (2 caracteres) e a senha do root.Ainda não sei como fazer um 'restore' (restaurar o banco de dados) em MySQL, mas vou ver agora! :-) Link to comment Share on other sites More sharing options...
stefanscott Posted August 14, 2009 Share Posted August 14, 2009 Fiz o 'restore' do banco de dados usando o comando seguinte na linha de comando do server: mysql -u root -p{SENHA DO ROOT} {NOME DO BANCO DE DADOS} < {NOME DO ARQUIVO CRIADO ACIMA} Obs : O "nome do arquivo criado acima" se refere ao arquivo criado no final do comando 'mysqldump' antes.Agora a loja funciona de novo, só as abas e algumas outras coisas estão ainda em inglês depois de clicar na bandeira brasileira.Vou excluir todos os comandos de 'DROP TABLE' no arquivo 'setup.sql' e executar de novo para ver se funciona assim.Se tiver erros, posso fazer o 'restore' de novo, usando o mesmo arquivo criado antes. :-) Link to comment Share on other sites More sharing options...
stefanscott Posted August 14, 2009 Share Posted August 14, 2009 Para botar as traduções ao português só para as "abas" na Área Administrativa ("back-end" ou "back office"), pode executar só o comando SQL seguinte em PhpMyAdmin em vez de executar o arquivo inteiro 'setup.sql', na mesma janela mencionada na primeira mensagem acima (a janela que foi mostrada na imagem GIF na primeira mensagem acima): INSERT INTO `ps_tab_lang` (`id_lang`, `id_tab`, `name`) VALUES (3, 1, 'Catálogo'), (3, 2, 'Clientes'), (3, 3, 'Compras'), (3, 4, 'Pagamento'), (3, 5, 'Envio'), (3, 6, 'Estatísticas'), (3, 7, 'Módulos'), (3, 29, 'Funcionários'), (3, 8, 'Preferências'), (3, 9, 'Ferramentas'), (3, 60, 'Rastreamento'), (3, 10, 'Fabricantes'), (3, 34, 'Fornecedores'), (3, 11, 'Atributos e Grupos'), (3, 36, 'Recursos'), (3, 58, 'Mapa de imagem'), (3, 66, 'Etiquetas'), (3, 68, 'Compactados'), (3, 12, 'Endereços'), (3, 63, 'Grupos'), (3, 65, 'Carrinho'), (3, 42, 'Faturas'), (3, 55, 'Delivery slips'), (3, 47, 'Merchandise retorno'), (3, 49, 'Credito slips'), (3, 59, 'Mensagens de clientes'), (3, 13, 'Status'), (3, 54, 'Mensagens de compra'), (3, 14, 'Vales descontos'), (3, 15, 'Moedas Correntes'), (3, 16, 'Impostos'), (3, 17, 'Transportadoras'), (3, 46, 'Estados'), (3, 18, 'Países'), (3, 19, 'Regiões'), (3, 20, 'Faixas de Preço'), (3, 21, 'Faixas de Peso'), (3, 50, 'Módulos'), (3, 51, 'Configurações'), (3, 61, 'Motores de Busca'), (3, 62, 'Referência'), (3, 22, 'Posições'), (3, 30, 'Perfis'), (3, 31, 'Permissões'), (3, 28, 'Contatos'), (3, 39, 'Contato'), (3, 38, 'Aparência'), (3, 56, 'Meta-Tags'), (3, 27, 'Produtos'), (3, 24, 'Email'), (3, 26, 'Imagem'), (3, 23, 'Banco de Dados'), (3, 48, 'PDF'), (3, 44, 'Localização'), (3, 67, 'Busca'), (3, 32, 'Linguagens'), (3, 33, 'Traduções'), (3, 35, 'Abas'), (3, 37, 'Acesso rápido'), (3, 40, 'Aliases'), (3, 41, 'Importar'), (3, 52, 'Subdominios'), (3, 53, 'DB backup'), (3, 57, 'CMS'), (3, 64, 'Geradores'), (3, 43, 'Pesquisa'); Obs : A primeira vez que executei esse comando (depois de fazer o 'restore' do banco de dados), deu um erro, dizendo que teve uma violação do "primary key" da tabela 'ps_tab_lang', onde teve 2 registros com os valores (1, 3) nas colunas ('id_lang', 'id_tab). Então, antes de executar o comando acima, para ter certeza que não existia registros em português na tabela 'ps_lang_tab' (com o valor 3 na coluna 'id_lang'), exclui todos os registros na tabela 'ps_tab_lang' que tinham o valor 3 na coluna 'id_lang', usando o comando seguinte: DELETE FROM TABLE `ps_tab_lang` WHERE `id_lang` = 3 Depois, fiz o comando acima (INSERT INTO `ps_tab_lang`...).Agora parece que quase toda a Área Adminstrativa está em português. Só faltam 1 ou 2 frases em algumas das 6 seções que aparecem em 'Ferramentas' > 'Traduções' ao abrir o menu com as 6 seções seguintes em baixo de 'Modificar traduções' e clicar na bandeira brasileira:1. Traduções da loja : faltam 22. Traduções da área de administração : faltam 43. Traduções das mensagens de erro : faltam 34. Traduções dos nomes dos campos : faltam 15. Traduções dos módulos : faltam 3 + todas para PayPal*6. Traduções PDF : faltam 0Obrigado xpanium! Fez um trabalho muito legal para os usuários brasileiros!* Se usa PayPal no Brasil? Ou só se usa PagSeguro? Link to comment Share on other sites More sharing options...
LeandroMartins Posted August 18, 2009 Share Posted August 18, 2009 Boa tarde a todos, sou novo no forum, mais com o intuito de aprender e tentar ajudar, segue abaixo "mensagem" de erro ao executar o comando DELETE FROM TABLE `ps_tab_lang` WHERE `id_lang` = 3 , dos procedimentos do nosso amigo, stefanscott, =====================Erroconsulta SQL:DELETE FROM TABLE `ps_tab_lang` WHERE `id_lang` =3Mensagens do MySQL : Documentação#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TABLE `ps_tab_lang` WHERE `id_lang` = 3' at line 1 =====================Estaria algo errado ? Link to comment Share on other sites More sharing options...
alexmartins Posted November 1, 2009 Share Posted November 1, 2009 Boa tarde a todos, sou novo no forum, mais com o intuito de aprender e tentar ajudar, segue abaixo "mensagem" de erro ao executar o comando DELETE FROM TABLE `ps_tab_lang` WHERE `id_lang` = 3 , dos procedimentos do nosso amigo, stefanscott, =====================Erroconsulta SQL:DELETE FROM TABLE `ps_tab_lang` WHERE `id_lang` =3Mensagens do MySQL : Documentação#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TABLE `ps_tab_lang` WHERE `id_lang` = 3' at line 1 =====================Estaria algo errado ? Amigo também tive o mesmo problema. Quando vc deleta os valores da primeira vez ainda restam dados, desta forma precisa voltar a apagar os dados da tabela até zerar. Só assim o INSERT será bem sucedigo.Abraço,Alex Martins Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now