Como criar um Listing Template usando visualização de Timber/Wig

Preparativos e criação de modelo de listagem

Primeiro de tudo, vá para a guia JetEngine > JetEngine > Performance , ative a alternância Timber/Twig Views e clique no botão “ Save tweaks config ”. Depois disso, a visualização Timber/Twig estará disponível para listagens.

vista de madeira/galho de alto desempenho

Em seguida, vá para a guia JetEngine> Listagens e clique no botão “ Adicionar novo ”. 

botão adicionar novo item de listagem

Selecione a fonte de listagem necessária . Por exemplo, você pode criar uma listagem para postagens padrão do WordPress. Escolhemos a fonte “Postagens” e o tipo de postagem personalizada “Médicos” .

Para isso, criamos anteriormente o Custom Post Type com metacampos customizados e adicionamos vários posts.

Preenchemos o título da postagem com o nome do médico, o conteúdo da postagem com as informações do médico e a miniatura da postagem com a foto do médico. Além disso, preenchemos campos personalizados com informações adicionais, como especialidade médica, experiência prática, email, etc.

postar com metacampos personalizados

Em seguida, insira o nome do item da listagem (não obrigatório), selecione a visualização da listagem “Madeira/Galho” e pressione o botão “ Criar item da listagem ”.

Após criar o Listagem, você será redirecionado para o editor Timber/Twig.

editor de galho de madeira

Exibindo os dados dinâmicos e padrão

Criaremos um modelo de Listagem para exibir as informações dos médicos. Primeiramente exibiremos o título do post (nome do médico). Para isso, clicamos no botão “ Dados Dinâmicos ” e escolhemos a opção “ Postar ”.

postar dados padrão

Selecionamos o campo “Título da postagem” no menu suspenso e clicamos no botão “ Inserir ”.

selecione os dados para mostrar o título da postagem

O espaço reservado {{ post.title }} será inserido na planilha. Além disso, pode ser digitado manualmente sem usar a funcionalidade “ Dados Dinâmicos ”.

dados do título da postagem

Em segundo lugar, exibiremos o valor do metacampo personalizado. Atingimos o valor “ Dados Dinâmicos ” e escolhemos a opção “Dados Dinâmicos”.

Selecionamos a fonte “Meta Dados” e escolhemos o Meta Campo necessário (Meta campo Texto “Especialidade”). Em seguida, clicamos no botão “ Inserir ”.

Ele insere o espaço reservado para o valor do metacampo personalizado:

{{ jet_engine_data(args={source:'meta',meta_key:'_specialty'}) }}

Além disso, inserimos o metacampo numérico “Experiência prática”. Adicionamos o “ano. de prática” texto personalizado após o espaço reservado:

{{ jet_engine_data(args={source:'meta',meta_key:'_practice-experience'}) }} yr. of practice

Aplicando Filtros aos Resultados

Em seguida, clicamos no botão “ Dados dinâmicos ”, escolhemos a opção “Postar” e selecionamos o campo “Postar conteúdo”. Em seguida, pressionamos o botão “ Adicionar filtro ao resultado ”.

Esta opção permite alterar os dados dinâmicos ou exibi-los no formato necessário.

Como o texto no campo de conteúdo da postagem é muito longo para o item da listagem, iremos encurtá-lo.

Para isso, optamos pelo “ JetEngine Callback ”.

No menu suspenso da função de retorno de chamada , escolhemos o retorno de chamada “ Cortar string por gráficos ou palavras ”.

Aviso

Esta opção aparece na lista depois que você ativa a alternância “Trim string callback” no Painel do WordPress > JetEngine > JetEngine > Módulos > guia Módulos Externos.

No menu suspenso Tipo aparado , você pode selecionar se deseja encurtar um texto para um determinado número de palavras ou caracteres. Selecionamos o tipo aparado “Palavras” e inserimos o número desejado (“5”) no campo Comprimento da string . Em seguida, clicamos no botão “ Inserir ”.

cortar string por caracteres ou palavras

Ele insere um espaço reservado:

{{ post.content|jet_engine_callback(args={cb:'jet_engine_trim_string_callback',jet_trim_cb_type:'words',jet_trim_cb_length:'5'}) }}
espaço reservado com o retorno de chamada do jetengine

Além disso, o texto pode ser encurtado com os filtros de madeira “ Cortar texto por palavras ” e “ Cortar texto por caracteres ” .

cortar texto por palavras e cortar texto por filtros de madeira de caracteres

Empregamos o elemento <div> para segmentar espaços reservados, garantindo que cada um deles apareça em uma linha distinta dentro do item da listagem.

Agora, vamos adicionar a miniatura da postagem. Conseguiremos isso usando o seguinte método: clicando no botão “ Dados dinâmicos ” e escolhendo a opção “Dados dinâmicos”. No pop-up, selecionamos a fonte “Meta Data” e inserimos a chave de campo personalizada “_thumbnail_id” . Em seguida, clicamos no botão “ Adicionar filtro ao resultado ”.

Escolhemos o “JetEngine Callback”. Em seguida, selecionamos “ Obter imagem por ID ” no menu suspenso da função Callback . Esta opção também nos permite escolher o Tamanho da imagem .

” alt=”obter imagem por retorno de chamada de ID” width=”844″ height=”562″ data-src=”https://crocoblock.com/knowledge-base/wp-content/uploads/2023/11/get-image-by-ID-callback.webp” data-srcset=”https://crocoblock.com/knowledge-base/wp-content/uploads/2023/11/get-image-by-ID-callback.webp 844w, https://crocoblock.com/knowledge-base/wp-content/uploads/2023/11/get-image-by-ID-callback-300×200.webp 300w, https://crocoblock.com/knowledge-base/wp-content/uploads/2023/11/get-image-by-ID-callback-768×511.webp 768w, https://crocoblock.com/knowledge-base/wp-content/uploads/2023/11/get-image-by-ID-callback-600×400.webp 600w” data-sizes=”(max-width: 844px) 100vw, 844px” />

Em seguida, clicamos no botão “Inserir” e obtivemos o seguinte espaço reservado:

{{ jet_engine_data(args={source:'meta',custom_key:'_thumbnail_id'})|jet_engine_callback(args={cb:'wp_get_attachment_image'}) }}

A descrição de todos os retornos de chamada do JetEngine pode ser encontrada aqui .

espaço reservado para a miniatura da postagem

Tags condicionais

Agora, vamos observar o botão “ Tags Condicionais ”. 

Aviso

Para usar as condições aprimoradas do JetEngine , ative a alternância de Visibilidade Dinâmica no Painel do WordPress > JetEngine > guia JetEngine.

A forma como as tags condicionais operam é muito parecida com o recurso JetEngine Dynamic Visibility , exibindo elementos quando as condições especificadas são atendidas.

A lógica condicional no Twig está disponível com a seguinte construção:

{% if statement_to_check %}
<!-- Paste your HTML here -->
{% endif %} }}

Para saber mais sobre a lógica condicional, consulte a documentação do Twig . 

Agora, vamos adicionar um rótulo personalizado que aparecerá no item da listagem se o valor no campo Número “Experiência prática” for maior que “10”.

Inicialmente, clicamos no botão “ Tags Condicionais ” .

botão de tags condicionais

Escolhemos a condição “ Maior que ” . Em seguida, inserimos o nome do campo em Field , inserimos “10” em Value , escolhemos o Contexto “Objeto de item de listagem atual” e definimos o tipo de dados “Numeric” . Eventualmente, pressionamos o botão “ Inserir ”.

maior que a condição

Inseriu tal construção:

{% if jet_engine_show_if(args={"jedv_condition":"greater-than","jedv_field":"_practice-experience","jedv_value":"10","jedv_context":"current_listing","jedv_data_type":"numeric"}) %}
<!-- Paste your HTML here -->
{% endif %}

Em vez de <!– Cole seu HTML aqui –> digitamos “Mais de 10 anos de experiência!”

construção de galho de tag condicional com rótulo personalizado

Depois de inserir todas as construções essenciais na planilha HTML , podemos clicar no botão “ Recarregar visualização ” para exibir o resultado na área de visualização . Mostra apenas os dados de postagem padrão; os dados do JetEngine podem ser verificados na página com o Listing Grid ou no front end.

visualização da listagem no editor de madeira/galho

Configurações de estilo CSS

Agora, vamos explorar as configurações de estilo CSS.

Para isso, adicionamos um atributo “class” com o valor “doctor-name” ao espaço reservado {{ post.title }}:

<a class="doctor-name">{{ post.title }}</a> 

Na planilha CSS, digitamos:

selector .doctor-name {
	font-size: 18px;
}

Usamos a instrução “selector” antes do seletor CSS para torná-lo exclusivo para a listagem atual.

Após recarregar a visualização, podemos ver que as alterações são aplicadas ao título da postagem (nome do médico).

título do post com o estilo CSS

Tags condicionais com CSS

As tags condicionais também podem ser aplicadas às configurações de estilo.

Para verificar, vamos adicionar uma borda à imagem se a posição do item de listagem na Grade de Listagem for um número par.

Apertamos o botão “ Tags condicionais ” , selecionamos a condição “ É um item ímpar ” e pressionamos o botão “ Inserir ” .

é um item estranho na tag condicional da grade de listagem

Recebemos essa estrutura:

{% if jet_engine_show_if(args={"jedv_condition":"listing-odd"}) %}
<!-- Paste your HTML here -->
{% endif %}

Copiamos o espaço reservado para miniatura da postagem e colamos em vez de <!– Cole seu HTML aqui –>:

{% if jet_engine_show_if(args={"jedv_condition":"listing-odd"}) %}
{{ jet_engine_data(args={source:'meta',custom_key:'_thumbnail_id'})|jet_engine_callback(args={cb:'wp_get_attachment_image'}) }}
{% endif %}
é uma estrutura condicional de item ímpar com o espaço reservado para miniatura da postagem

Em seguida, clicamos no botão “ Tags condicionais ” novamente, selecionamos a condição “ É item par ” e pressionamos o botão “ Inserir ”.

é um item par na tag condicional da grade de listagem

Recebemos essa estrutura:

{% if jet_engine_show_if(args={"jedv_condition":"listing-even"}) %}
<!-- Paste your HTML here -->
{% endif %}

Cortamos o espaço reservado para miniatura da postagem e colamos em vez de <!– Cole seu HTML aqui –>. Além disso, adicionamos um atributo “class” com o valor “even-item”:

{% if jet_engine_show_if(args={"jedv_condition":"listing-even"}) %}
<a class="even-item">{{ jet_engine_data(args={source:'meta',custom_key:'_thumbnail_id'})|jet_engine_callback(args={cb:'wp_get_attachment_image'}) }}</a>
{% endif %}

Por fim, digitamos esse estilo na planilha CSS :

selector .even-item {
	display: flex;
	border: 1px solid;
	padding: 5px;
}
é mesmo uma estrutura condicional de item com o espaço reservado para miniatura da postagem

Para preservar as alterações, clicamos no botão “ Salvar ”.

Observando resultados na grade de listagem

Para exibir o modelo de listagem no Listing Grid , você pode criar uma página no bloco WordPress, Elementor ou editor Bricks . Usamos o editor WordPress.

Para isso, fomos ao Painel do WordPress > Páginas > Adicionar nova aba, colocamos o bloco Listing Grid e selecionamos a Listagem recém-criada no menu suspenso.

O modelo de listagem na grade de listagem exibe os valores dos metacampos que inserimos na planilha HTML . Além disso, os estilos CSS são aplicados aos títulos das postagens e às imagens em todos os itens pares da listagem.

modelo de listagem criado com visualização Timber/Twig

Isso é tudo. Agora você já sabe como criar o Listing Template com visualização Timber/Twig, disponível com o plugin JetEngine para seu site WordPress.

Índice