これ、最近よく使う手なので。備忘録として。
投稿内に画像を記述する時、最終的にURLが変更になる場合もあるので、フルパスで書くのが面倒な時が多々あります。
よくあるのが、
http://www.xxx.jp/wp/
以下にwordpressのファイル一式を置くような場合、最終的なURLは
http://www.xxx.jp/
となることがよくあります。ただ、開発中は/wp/以下で作業をしているので、普通にメディアの追加をしたりすると/wp/まで入っちゃいます。
そんな時に、ショートコードでURLを指定しておくと公開時に画像のパスを書きなおしたりしなくても済みますね。
使用しているテーマの中のfunctions.phpに以下のような記述をして、
[url]とか、[top_url]とか、[imageurl]と入れると置き換えてくれます。
最後の
add_filter(‘widget_text’, ‘do_shortcode’);
は、widgetでもショートコードが使えるようにするものです。
意外と便利です。
/*** add shorcode for page -siteURL */
function my_home_url( $atts ) {
return home_url();
}
add_shortcode( 'url', 'my_home_url' );
function my_tpl_url() {
return get_bloginfo('template_url');
}
add_shortcode('tpl_url', 'my_tpl_url');
function festurl() {
return 'http://www.xxx.jp/images/';
}
add_shortcode('imageurl', 'imageurl');
add_filter('widget_text', 'do_shortcode');