Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Avatar do usuário
Por reds
Mensagens Especiais
#80773
Ola pessoal,
Eu recriei uma modificação para adicionar a possibilidade de descrição aos banners do site, porem eu coloquei o campo como input, como nao sou um expert em php, como eu deveria fazer a troca do campo para um campo de input para textarea.

Vide campo
Código: Selecionar todos
<td class="text-left"><input type="text" name="banner_image[<?php echo $language['language_id']; ?>][<?php echo $image_row; ?>][description]" value="<?php echo $banner_image['description']; ?>" placeholder="<?php echo $entry_banner_description; ?>" class="form-control" /></td>
O segundo ponto que eu ainda não é, como eu executo um SQL direto da instalaçao do pacote "...ocmod.xml",
pois na modificação acima, precisamos criar um campo na tabela "banner_image".

https://prnt.sc/mkpk06

A modificação vai ser disponível para OC 2.3 quando concluída de forma gratuita, se alguém puder ajudar.
Todo o resto esta ok.
Manoel Vidal gostou disso
#80783
Olá @reds, substitua a linha que informou pela abaixo;
Código: Selecionar todos
<td class="text-left">
<textarea name="banner_image[<?php echo $language['language_id']; ?>][<?php echo $image_row; ?>][description]" rows="5" cols="33" class="form-control"><?php echo !empty($banner_image['description'])?$banner_image['description']:''; ?></textarea>
</td>
reds, Manoel Vidal gostou disso
#80784
veteranodf escreveu: 14 Fev 2019, 09:16 Olá @reds, substitua a linha que informou pela abaixo;
Código: Selecionar todos
<td class="text-left">
<textarea name="banner_image[<?php echo $language['language_id']; ?>][<?php echo $image_row; ?>][description]" rows="5" cols="33" class="form-control"><?php echo !empty($banner_image['description'])?$banner_image['description']:''; ?></textarea>
</td>
Show, testei aqui e ficou uma belezinha :)
agradecido pela ajuda meu querido!
Manoel Vidal gostou disso
#80786
Que bom que deu certo; Para adicionara coluna "description" na tabela "banner" você pode utilizar o método abaixo, lembrando que funciona somente para a versão 2.x do opencart, na versão 3.x esse tipo de execução foi removido por segurança;

Crie um arquivo chamado "install.php" e colar o código abaixo, o arquivo deve ficar na raiz da extensão ocmod no mesmo diretório onde esta o "install.xml";
Código: Selecionar todos
<?php

$checar_coluna = $this->db->query("SELECT *FROM " . DB_PREFIX . "banner");
  
if(!isset($checar_coluna->row['description'])){
  $this->db->query("ALTER TABLE `".DB_PREFIX."banner` ADD `description` TEXT NOT NULL AFTER `name`");
}
Manoel Vidal gostou disso
#80788
Ola @veteranodf

Construi a função, e testei todo o contexto todo, ficou 100% funcional
Acredito que é bem util para quem gostaria de exibir textos extras no mouse hover, ou acalentar os banners com mais propriedades.
Vou fazer o retorno da função em *banners, slideshow e carousel*

Versão do Opencart 2.3
Mais tarde posto o link aqui no fórum.

Sua ajuda foi essencial, agradecido mesmo!
:ugeek:
Manoel Vidal gostou disso

Gente preciso de ajuda urgente. Na migraç&a[…]

Caro @reds , muito obrigado pela resposta.

PHP 8+ incompatibilidade

Toda tradução para a versão 3[…]

Ola @alex3257 Se você precisa apenas ver […]