Blog sobre WordPress
No Result
View All Result
  • Web Stories
  • Desenvolvimento
  • Infra
  • Mobile
  • Performance
  • Segurança
  • SEO
  • E-commerce
Cadastrar e-mail
  • Web Stories
  • Desenvolvimento
  • Infra
  • Mobile
  • Performance
  • Segurança
  • SEO
  • E-commerce
No Result
View All Result
Blog sobre WordPress
No Result
View All Result

Início » Desenvolvimento WordPress » Entenda melhor o desenvolvimento de tema no WordPress 4.7

Entenda melhor o desenvolvimento de tema no WordPress 4.7

by
6 anos ago
Reading Time: 4 min
1
wp-4-7-elvis-pereira
Compartilhe no FacebookCompartilhe no LinkedIn

O WordPress 4.7 veio cheio de novidades que vieram agregar e deixar ainda melhor o desenvolvimento de tema, foram adicionadas novas funções, hooks e comportamentos que podem mudar totalmente a forma que você desenvolve atualmente.

Conteúdo relacionado

Como criar Web Stories no WordPress

Como criar blocos reutilizáveis no Gutenberg

Como habilitar recursos ocultos do Gutenberg no tema WordPress

Novidades que vieram agregar e deixar ainda melhor o desenvolvimento de tema

Click To Tweet

A função get_theme_file_uri() e suas agregadas.

A função get_template_part() foi introduzida no WordPress 3.0, ela é fundamental no desenvolvimento de tema e tema filho. Esta função busca no tema filho pelo arquivo especificado, se o arquivo não for encontrado, ela busca tal arquivo no tema pai. Isto permite facilmente que uma template part seja sobrescrita no tema filho.

Acompanhe em primeira mão tudo sobre o WordPress

A nova função get_theme_file_uri() introduzida no WordPress 4.7, habilita este comportamento de tema filho para URLs de arquivos do tema, por exemplo, quando um arquivo CSS ou JavaScript é printado:

wp_enqueue_script( 'my-script', get_theme_file_uri( 'js/my-script.js' ) );

O código acima printa a URL do arquivo js/my-script.js do seu tema filho se ele existir, caso o arquivo não exista no tema filho, então é printado a URL do arquivo contido no tema pai, assim como a função get_template_part().

A função get_theme_file_path() também foi introduzida. Ela é equivalente ao caminho do get_theme_file_uri(). Um caso de uso para esta função é se você gosta de gerar dinamicamente o parâmetro de versão para seus recursos printados, com base no último timestamp de modificação do arquivo (usando filemtime()):

wp_enqueue_script(
   'my-script',
   get_theme_file_uri( 'js/my-script.js' ),
   array(),
   filemtime( get_theme_file_path( 'js/my-script.js' ) )
);

E para finalizar, também foram introduzidas as funções get_parent_theme_file_uri() e get_parent_theme_file_path() que também retornam a URL ou o caminho do arquivo no tema pai (independente se o arquivo existir ou não no tema filho). Estas funções podem ser usadas em substituição as funções get_template_directory_uri() e get_template_directory(), respectivamente.

O filtro {$type}_template_hierarchy no desenvolvimento de tema

hierarquia de template para o desenvolvimento de tema

Este novo filtro nomeado dinamicamente permite a inclusão de novos arquivos na hierarquia de templates do WordPress. Embora já seja possível executar tal tarefa usando o filtro já existente chamado template_include, este novo filtro permite que tal tarefa seja feita de uma forma muito mais limpa. Nome dos filtros já disponíveis:

  • embed_template_hierarchy
  • 404_template_hierarchy
  • search_template_hierarchy
  • frontpage_template_hierarchy
  • home_template_hierarchy
  • taxonomy_template_hierarchy
  • attachment_template_hierarchy
  • single_template_hierarchy
  • page_template_hierarchy
  • singular_template_hierarchy
  • category_template_hierarchy
  • tag_template_hierarchy
  • author_template_hierarchy
  • date_template_hierarchy
  • archive_template_hierarchy
  • paged_template_hierarchy
  • index_template_hierarchy

Aqui está um exemplo do uso deste novo filtro para adicionar um arquivo baseado no ano ao topo da hierarquia para arquivos de data:

add_filter( 'date_template_hierarchy', function( array $templates ) {
    $year = get_query_var( 'year' );
    array_unshift( $templates, "year-{$year}.php" );
    return $templates;
} );

Aqui está um exemplo um pouco mais complexo de adicionar um arquivo à hierarquia para um arquivo de categoria com base no valor de seu campo meta de termo:

add_filter( 'category_template_hierarchy', function( array $templates ) {
    $format = get_term_meta( get_queried_object_id(), 'format', true );
    if ( $format ) {
        $new = "category-format-{$format}.php";
        $pos = array_search( 'category.php', $templates );
        array_splice( $templates, $pos, 0, $new );
    }
    return $templates;
} );

Este filtro também permite que os plugins de debug acessem e exibam a hierarquia de template completa para cada solicitação, para que você possa ver quais arquivos o WordPress está buscando em seu tema. A versão mais recente do Query Monitor já suporta esta funcionalidade.

Nomes de templates mais simples para conteúdo com slugs Non-ASCII

Dado um post ou termo com um nome Non-ASCII, como hello-world-?, a forma URL-encoded do nome é usada na hierarquia do template. Por exemplo, na visualização deste post, na hierarquia anterior ao WordPress 4.7:

  • single-post-hello-world-%f0%9f%98%80.php
  • single-post.php
  • single.php
  • singular.php
  • index.php

Isso não é muito fácil de usar, então o WordPress 4.7 adicionou um novo template de prioridade mais alta à hierarquia que usa a forma não codificada do nome:

  • single-post-hello-world-?.php
  • single-post-hello-world-%f0%9f%98%80.php
  • single-post.php
  • single.php
  • singular.php
  • index.php

Isso torna muito mais claro o que um arquivo de template se refere ao construir templates para posts específicas ou termos que incluem caracteres Non-ASCII em seu nome.

O WordPress 4.7 está recheado de novidades, aproveite cada uma delas para tornar o desenvolvimento de tema o mais produtivo possível, assim poupando tempo e fazendo uma entrega de valor ainda maior para seus clientes.

Tags: back-endDeveloperTemasWordPress 4.7
Share8Share1SendShare
Previous Post

Os atributos para Resource Hints no WordPress 4.7

Next Post

Twenty Seventeen: novo tema do WordPress 4.7

Related Posts

Anatomia do Gutenberg, o editor do WordPress
Desenvolvimento WordPress

Anatomia do Gutenberg, o editor do WordPress

13 de janeiro de 2021
As vantagens do editor Gutenberg para WordPress
Desenvolvimento WordPress

As vantagens do editor Gutenberg para WordPress

19 de agosto de 2020
Metodologia BPM para melhoria de processos dentro da empresa
Desenvolvimento WordPress

Metodologia BPM para melhoria de processos dentro da empresa

15 de janeiro de 2021
Scrum e PMBOK - aliados na gestão de projetos
Desenvolvimento WordPress

PMBOK e Scrum: grandes aliados na gestão de projetos

15 de janeiro de 2021
Next Post
wp-4-7-mayara-alanna

Twenty Seventeen: novo tema do WordPress 4.7

Multisites com um foco muito especial

Comments 1

  1. Pingback: WordPress 4.7 - Já está por dentro das novidades?

Deixe um comentário Cancelar resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Receba no seu e-mail uma série de conteúdos sobre Infra para WordPress.

  • Este campo é para fins de validação e não deve ser alterado.

Facebook LinkedIn Instagram Twitter Youtube Github RSS

Sobre a Apiki

Empresa especializada em WordPress com três unidades de negócios.

  1. Design e Desenvolvimento;
  2. Infra e Hospedagem;
  3. Suporte e manutenção.

Em resumo, só fazemos uma coisa em WordPress: tudo.

Páginas do Apiki.com

  • Apiki.com
  • Sobre a Apiki
  • Hospedagem
  • Desenvolvimento
  • UX & UI para WordPress
  • Growth em WordPress
  • Suporte
  • Atendimento

Páginas do Blog

  • Sobre
  • Newsletter
  • Desenvolvimento WordPress
  • Segurança para WordPress
  • WordPress Mobile
  • Infra para WordPress
  • WordPress SEO
  • WordPress Performance
  • E-commerce

© 2020 Apiki - Empresa especializada em WordPress.

No Result
View All Result
  • Web Stories
  • Desenvolvimento
  • Infra
  • Mobile
  • Performance
  • Segurança
  • SEO
  • E-commerce

© 2020 Apiki - Empresa especializada em WordPress.