Página 1 de 2

QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 05 Jun 2019, 23:08
por m.lirangi
Olá Colegas.. alguém sabe se é possível e caso seja como posso fazer?
Imagem

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 06 Jun 2019, 12:07
por veteranodf
Olá;

Caso for o tema default acrescente a classe abaixo no final do arquivo "catalog/view/theme/default/stylesheet/stylesheet.css", após isso remova o cache do navegador;

.product-thumb .caption p {margin-top: 30px !important}

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 06 Jun 2019, 20:06
por m.lirangi
Amigo, obrigada pela ajuda, mas nao deu certo. Eu até fiz no default pra ver e tudo q mudou foi q o título veio pra margem direita... no meu tema, nada mudou.... alguma outra dica?

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 07 Jun 2019, 11:13
por Gusting
Olá,

ANTES DE TUDO aconselho a fazer um backup dos twigs que você for modificar antes de fazer tais modificações/testes.

Sou meio leigo, mas fica aqui minha ideia, porque é um caso muito especifico, vai precisar que você crie um filtro específico para os produtos que você quer fazer isso, o que poder dar um trabalhinho, ou tentar encontrar um padrão, por exemplo, sempre quebrar após 5 caracteres.

Caso queira tentar, vá /public/catalog/view/theme/SEUTEMA/template/product e abra o category.twig

Procure no category.twig pela linha
Código: Selecionar todos
<a href="{{ product.href }}">{{ product.name }}</a>
Que creio deve estar entre um <center><h4></h4></center>

E "sobreponha" o código com este:
Código: Selecionar todos
{% if product.name|length >= 22 %}
   <a href="{{ product.href }}">{{ product.name|slice(0,5) }}</a><br><a href="{{ product.href }}">{{ product.name|slice(5) }}</a>
{% else %}
   <a href="{{ product.href }}">{{ product.name }}</a>
{% endif %}

Neste caso, sempre que o nome do produto tiver 22 caracteres, ele quebra a linha com os 5 primeiros caracteres. Aí você pode ajustar pra quantia que você quer que haja efeito e da onde quebrar linha até onde.

Outra forma de fazer sem ser com o "Caso o produto tenha 22 caracteres", é pegar o id específico do produto e colocar no lugar do product.name|length, ficaria mais ou menos assim:
Código: Selecionar todos
{% if product.id == 99 %}

Lembrando que tudo isso é gambiarra, pois é um caso muito especifico, mas dá pra quebrar um galho. Ficaria mais ou menos assim:

Imagem

E outra coisa: Caso funcione no category.twig, é necessário a implementação do mesmo código no featured.twig, search.twig e no twig dos produtos relacionados.



Boa sorte,
Gusting

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 07 Jun 2019, 11:32
por veteranodf
m.lirangi escreveu:
06 Jun 2019, 20:06
Amigo, obrigada pela ajuda, mas nao deu certo. Eu até fiz no default pra ver e tudo q mudou foi q o título veio pra margem direita... no meu tema, nada mudou.... alguma outra dica?
A minha dica funciona perfeitamente, quando te passei testei, o que deve fazer é acrescentar a classe no final do "stylesheet.css", mude o valor de 30px para outro tipo 60px, assim poderá ver melhor o efeito;

Deve remover o cache do navegador para a modificação entrar em vigor, caso a sua loja estiver utilizando cache é bom remover também, para isso acesse a página inicial da administração e clique no botão de engrenagem no topo direito abaixo do botão sair, no modal que abrir em "Tema" selecione OFF e ao lado clique em atualizar;

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 07 Jun 2019, 13:38
por m.lirangi
@veteranodf

Eu acho q vc nao entendeu oq preciso.. realmente, colocando o q vc falou, aumentou o espaço entre o título, a breve descrição e o preço, mas não é isso que preciso... preciso que o nome do produto seja dividido em 2 ou 3 linhas, tipo:
BULE
MOLDE DE SILICONE

Do jeito q tá, tá ficando
BULE MOLDE DE
SILICONE

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 07 Jun 2019, 13:41
por m.lirangi
Gusting escreveu:
07 Jun 2019, 11:13
Olá,

ANTES DE TUDO aconselho a fazer um backup dos twigs que você for modificar antes de fazer tais modificações/testes.

Sou meio leigo, mas fica aqui minha ideia, porque é um caso muito especifico, vai precisar que você crie um filtro específico para os produtos que você quer fazer isso, o que poder dar um trabalhinho, ou tentar encontrar um padrão, por exemplo, sempre quebrar após 5 caracteres.

Caso queira tentar, vá /public/catalog/view/theme/SEUTEMA/template/product e abra o category.twig

Procure no category.twig pela linha
Código: Selecionar todos
<a href="{{ product.href }}">{{ product.name }}</a>
Que creio deve estar entre um <center><h4></h4></center>

E "sobreponha" o código com este:
Código: Selecionar todos
{% if product.name|length >= 22 %}
   <a href="{{ product.href }}">{{ product.name|slice(0,5) }}</a><br><a href="{{ product.href }}">{{ product.name|slice(5) }}</a>
{% else %}
   <a href="{{ product.href }}">{{ product.name }}</a>
{% endif %}

Neste caso, sempre que o nome do produto tiver 22 caracteres, ele quebra a linha com os 5 primeiros caracteres. Aí você pode ajustar pra quantia que você quer que haja efeito e da onde quebrar linha até onde.

Outra forma de fazer sem ser com o "Caso o produto tenha 22 caracteres", é pegar o id específico do produto e colocar no lugar do product.name|length, ficaria mais ou menos assim:
Código: Selecionar todos
{% if product.id == 99 %}

Lembrando que tudo isso é gambiarra, pois é um caso muito especifico, mas dá pra quebrar um galho. Ficaria mais ou menos assim:

Imagem

E outra coisa: Caso funcione no category.twig, é necessário a implementação do mesmo código no featured.twig, search.twig e no twig dos produtos relacionados.



Boa sorte,
Gusting

Caramba, isso é mesmo uma baita GAMBIARRA, mas ficou do jeito q eu preciso.. .eu vou tentar, só espero nao fazer besteira.. vlw mesmo!

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 07 Jun 2019, 13:52
por m.lirangi
Gusting escreveu:
07 Jun 2019, 11:13
Olá,

ANTES DE TUDO aconselho a fazer um backup dos twigs que você for modificar antes de fazer tais modificações/testes.

Sou meio leigo, mas fica aqui minha ideia, porque é um caso muito especifico, vai precisar que você crie um filtro específico para os produtos que você quer fazer isso, o que poder dar um trabalhinho, ou tentar encontrar um padrão, por exemplo, sempre quebrar após 5 caracteres.

Caso queira tentar, vá /public/catalog/view/theme/SEUTEMA/template/product e abra o category.twig

Procure no category.twig pela linha
Código: Selecionar todos
<a href="{{ product.href }}">{{ product.name }}</a>
Que creio deve estar entre um <center><h4></h4></center>

E "sobreponha" o código com este:
Código: Selecionar todos
{% if product.name|length >= 22 %}
   <a href="{{ product.href }}">{{ product.name|slice(0,5) }}</a><br><a href="{{ product.href }}">{{ product.name|slice(5) }}</a>
{% else %}
   <a href="{{ product.href }}">{{ product.name }}</a>
{% endif %}

Neste caso, sempre que o nome do produto tiver 22 caracteres, ele quebra a linha com os 5 primeiros caracteres. Aí você pode ajustar pra quantia que você quer que haja efeito e da onde quebrar linha até onde.

Outra forma de fazer sem ser com o "Caso o produto tenha 22 caracteres", é pegar o id específico do produto e colocar no lugar do product.name|length, ficaria mais ou menos assim:
Código: Selecionar todos
{% if product.id == 99 %}

Lembrando que tudo isso é gambiarra, pois é um caso muito especifico, mas dá pra quebrar um galho. Ficaria mais ou menos assim:

Imagem

E outra coisa: Caso funcione no category.twig, é necessário a implementação do mesmo código no featured.twig, search.twig e no twig dos produtos relacionados.



Boa sorte,
Gusting
Pensando bem, não vai dar certo... tenho produtos com nomes grandes e pequenos :(
Será q não existe nada se possa fazer tipo product.name1 e product.name2 ??

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 07 Jun 2019, 14:02
por Gusting
m.lirangi escreveu: Pensando bem, não vai dar certo... tenho produtos com nomes grandes e pequenos :(
Será q não existe nada se possa fazer tipo product.name1 e product.name2 ??
Até deve ter como fazer esse ajuste de product.name1 e name2, mas ai geraria mais código, que não saberia te explicar porque nem eu mesmo tenho ideia.
E nisso entra ideia do Product ID, na loja que dou manutenção existe uns filtros iguais a esse, mas é relacionado a categoria do Produto.

Porém geraria um if bem grantido, dependendo da quantidade de produtos e isso geraria uma manutenção a mais, querendo ou não.

Mas é isto, essas foram minhas ideias.
Espero ter te dado uma luz, nem que ser for minima. kkkk

E ah, caso queira tentar com o id, vê o id no banco ou caso ainda esteja sem SEO URL, é só olhar na query que você vai saber qual id colocar no if. Por exemplo:
Imagem

Aí é só colocar no lugar do
Código: Selecionar todos
{% if product.name|length >= 22 %}
para
Código: Selecionar todos
{% if product.id == 400 %}
Boa sorte,
Gusting

Re: QUEBRAR O TÍTULO EM 2 LINHAS

Enviado: 07 Jun 2019, 16:14
por veteranodf
@m.lirangi desculpe realmente não tinha captado o que desejava, agora sim ficou claro, você pode seguir a dica do amigo @Gusting ou o passo que irei passar abaixo que entrará em vigor em todas as páginas e módulos instalados na loja;

Arquivo catalog\model\catalog\product.php

Localize:
Código: Selecionar todos
			return array(
				'product_id'       => $query->row['product_id'],
				'name'             => $query->row['name'],
Substitua por:
Código: Selecionar todos
			if (preg_match('/\s/i', trim($query->row['name']))) {
				$name               = explode(" ", trim($query->row['name']));
				$new_name           = $name['0'];
				unset($name['0']);
				$query->row['name'] = $new_name.'<br />'.implode(" ", $name);
			}
			
			return array(
				'product_id'       => $query->row['product_id'],
				'name'             => $query->row['name'],
Após executar a alteração deve acessar o menu Extensões > Modificações e atualizar o cache OCMOD