1

I am trying to use tips from here to add my JS file.

I put the following in the functions.php of atahualpa theme I've got installed

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

TEMPLATEPATH has been already used before in there, so I just adapted it. But it doesn't show up.

What did I do wrong?

1
  • Mine was first, but ok :P
    – naugtur
    Commented Aug 23, 2010 at 10:01

3 Answers 3

9

TEMPLATEPATH is a directory path, not a url. You'll need to use get_template_directory_uri().

0
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' );

Add to your parents themes functions file.

However, if you're adding scripts to a parent theme, create a child theme and add the script to the child themes functions file using 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 rather than init.

-1

if you use child themes, "template_directory" would return the parent theme directory location. I use 'CHILD_URL' and 'PARENT_URL' if you just need to print print urls.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.