web-development-kb-pt.site

Por que o wp_enqueue_script () não funciona ao incluir um arquivo JavaScript com o TEMPLATEPATH?

Eu estou tentando usar dicas de aqui para adicionar meu arquivo JS.

Eu coloquei o seguinte no functions.php do tema atahualpa eu tenho instalado

function lektor_init() {
  if (true) {
    wp_enqueue_script('lektor',TEMPLATEPATH.'/js/synteza.js');
  }
}
add_action('init','lektor_init'); 

TEMPLATEPATH já foi usado antes, então eu o adaptei. Mas isso não aparece.

O que eu fiz errado?

1
naugtur

TEMPLATEPATH é um caminho de diretório, não um URL. Você precisará usar get_template_directory_uri().

9
John P Bloch
function parent_theme_name_scripts() {
    wp_enqueue_script( 'lektor', get_template_directory_uri() . '/js/synteza.js', array(), '1.0.0', true );
}

add_action( 'wp_enqueue_scripts', 'parent_theme_name_scripts' );

Adicione ao seu arquivo de funções de temas dos pais.

No entanto, se você estiver adicionando scripts a um tema pai, crie um tema filho e adicione o script ao arquivo de funções de temas filho usando get_stylesheet_directory_uri()

add_action( 'wp_enqueue_scripts', 'child_theme_name_scripts' );
function child_theme_name_scripts() {
        wp_enqueue_script( 'lektor', get_stylesheet_directory_uri() . '/js/synteza.js', array(), '1.0.0', true );
    }

Use wp_enqueue_scripts ao invés de init .

0
Brad Dalton