To make a long story short: get_bloginfo( 'template_directory' ) and get_bloginfo( 'template_url' ) simply return get_template_directory_uri().
So, you can shortcut that second call simply by referring directly to the latter template tag.
Refer to source for get_bloginfo().
A few others:
'url'=>home_url()'wpurl'=>site_url()'stylesheet_url'=>get_stylesheet_uri()'stylesheet_directory'=>get_stylesheet_directory_uri()'locale'=>get_locale()
Edit
Note also: TEMPLATEPATH and STYLESHEETPATH are slated for deprecation, so you are better off simply replacing them now, with get_template_directory() and get_stylesheet_directory(), respectively.
Edit 2
Re: this comment
Just what I was about to say :). I’d add that
get_template_directory()returns the path andget_template_directory_uri()the url. So the author isn’t being consistent:get_bloginfo( 'template_directory' )andget_template_directory()return different things!
Refer back to source 🙂
case 'template_directory':
case 'template_url':
$output = get_template_directory_uri();
break;
Re: this comment:
The one caveat when developing child themes you’ll need to use
get_stylesheet_directory()explicitly. Someone correct me if I’m wrong.
True, but that’s always been the case. get_bloginfo() doesn’t return anything related to get_stylesheet_directory(). It only returns get_stylesheet_uri() and get_stylesheet_directory_uri().