Somente função de saída de funções.php se a tag condicional for verdadeira
-
28-09-2020 - |
Pergunta
Estou usando Masonry (incluído no WP 3.9) no meu tema childe.
eu segui este tutorial.
Em seu código para funções.php eles usam instruções condicionais:
if ( ! is_admin() ) :
function slug_scripts_masonry() {
wp_enqueue_script('masonry');
wp_enqueue_style('masonry’, get_template_directory_uri().'/css/’);
}
add_action( 'wp_enqueue_scripts', 'slug_scripts_masonry' );
endif; //! is_admin()
O !is_admin parece funcionar, porque quando procuro a fonte, não consigo encontrar nada.No entanto, meu objetivo é permitir que essa função seja executada apenas quando estivermos em uma página de taxonomia.No entanto, alterando-o para:
if ( is_tax() ) :
function slug_scripts_masonry() {
wp_enqueue_script('masonry');
wp_enqueue_style('masonry’, get_template_directory_uri().'/css/’);
}
add_action( 'wp_enqueue_scripts', 'slug_scripts_masonry' );
endif;
não funciona!Não inclui mais lugar nenhum!O que estou fazendo de errado?
Solução
Mova a condicional is_tax() dentro da função slug_scripts_masonry.
function slug_scripts_masonry() {
if ( is_tax() ) {
wp_enqueue_script( 'masonry' );
wp_enqueue_style( 'masonry', get_template_directory_uri().'/css/' );
}
}
add_action( 'wp_enqueue_scripts', 'slug_scripts_masonry' );
Como o Wordpress ainda não executou o código que determina o resultado de is_tax() ele retornará false em todas as páginas.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a wordpress.stackexchange