Como definir o valor padrão para a breve descrição do magento?
-
13-12-2019 - |
Pergunta
Atualmente minha loja tem cerca de 20.000 produtos.E a breve seção de descrição de cada produto contém o título do produto neste momento.
Quero substituir a breve seção de descrição de cada produto pela imagem a seguir, em vez do título do produto.
Como substituir em massa o código da imagem acima na seção de breve descrição do produto magento?
Solução
Você poderia tentar definir um valor padrão para o short_description
atributo, no painel de administração vá para Catálogo > Atributos > Gerenciar Atributos.No entanto, você precisaria remover todos os valores definidos para os produtos existentes.Eu faria isso com uma ferramenta chamada importador em massa magmi.
Talvez uma abordagem melhor seria remover a breve descrição da página de visualização do produto e criar um bloco estático com o seu conteúdo e adicioná-lo à página de visualização do produto.
Para este método você primeiro precisa criar um bloco estático com seu conteúdo, em seguida adicioná-lo ao seu layout xml, você precisa descobrir o identificador de layout para sua página de visualização de produto, provavelmente também PRODUCT_TYPE_configurable
ou PRODUCT_TYPE_simple
ou ambos?Então use o unset_child action
método para remover a breve descrição ou você pode precisar apenas comentá-la no seu tema catalog/product/view.phtml
arquivo de modelo se não for adicionado pelo layout xml.Em seguida, disponibilize seu bloco estático recentemente criado para a página do seu produto com algo como.
<block type="cms/block" name="my_identifier"> <action method="setBlockId"><block_id >my_identifier</block_id></action> </block>
Finalmente, para adicionar seu bloco estático às páginas do seu produto, use o trecho de código abaixo em seu arquivo de modelo phtml, próximo ao local onde a breve descrição estava sendo chamada.
<?php echo $this->getChildHtml('my_identifier') ?>
Acho que o segundo método é melhor, pois seu conteúdo não é uma breve descrição do produto, mas sim informações úteis sobre sua loja e, como tal, esses dados não devem ser mantidos no atributo 'short_description', que pode ser usado em outras partes do sistema, ou seja,carrinho de compras, e-mails transacionais etc.
Boa sorte
Outras dicas
Certifique-se de fazer primeiro um backup do seu banco de dados SQL.
Sua tarefa poderia ser realizada alterando diretamente o banco de dados SQL do Magento.
Como o Magento usa o modelo de dados EAV (entidade-atributo-valor) (https://en.wikipedia.org/wiki/Entity%E2%80%93attribute%E2%80%93value_model), você primeiro precisa descobrir qual ID de atributo seu Magento usa para definir os valores correspondentes.
Abra seu banco de dados Magento com phpMyAdmin ou algo semelhante.Verifique sua ferramenta de gerenciamento de domínio/hospedagem para obter acesso a ela.
Abra a mesa eav_attribute
e procure por short_description
dentro da coluna attribute_code
.Você pode usar a pesquisa da sua ferramenta de gerenciamento SQL ou simplesmente executar a seguinte consulta SQL:
SELECT * FROM `eav_attribute` WHERE `attribute_code` = "short_description";
Note o attribute_id
da linha resultante.
Agora abra a mesa catalog_product_entity_text
que contém o texto dentro da breve descrição do produto.Faça uma pesquisa onde attribute_id
é o seu ID (número) anotado, como (neste caso 62):
SELECT * FROM `catalog_product_entity_text` WHERE `attribute_id` = 62;
Na coluna value
você encontrará a breve descrição do produto.
Agora você pode alterar todos os campos de valor usando esta consulta SQL:
UPDATE `catalog_product_entity_text`
SET `value` = '<img src="http://domain.com/images/conditions.gif" />'
WHERE `attribute_id` = 62;
Se você estiver usando storeViews diferentes (talvez como idiomas), observe que a coluna store_id
também desempenha um papel.
Certifique-se de fazer primeiro um backup do seu banco de dados SQL.