先にCSSをregistしておいて。ショートコード内でenqすると、ショートコードが利用されている場合のみCSSが読み込まれ、また、記事内に複数回ショートコードを利用しても、一度しかCSSが読み込まれないので便利
/**
* 事前にCSSの読み込みを準備
*/
function regist_megane() {
wp_register_style( 'megane-css', get_template_directory_uri() . '/megane.css' );
}
add_action( 'wp_enqueue_scripts', 'regist_megane' );
/**
* ショートコードにおいてcssを読み込む
*/
function short_megane() {
wp_enqueue_style( 'megane-css' );
return 'megane';
}
add_shortcode( 'megane', 'short_megane' );
/**
* もう一つショートコードを作った場合に同じCSSならこれでもOK
*/
function short_megane2() {
wp_enqueue_style( 'megane-css' );
return 'megnae2';
}
add_shortcode( 'megane2', 'short_megane2' );