WordPressでLightBoxをプラグインなしで使用する方法
LightBoxからダウンロードし、
distフォルダ内の
1.css
2.img
3.js
この3つをテーマフォルダ内にアップロードします。
ヘッダーに以下を挿入
<?php if ( is_singular() ): //投稿・固定ページでしか利用しないため、その他では呼び出さない?> <?php //wp_enqueue_script('jquery');//jQueryが読み込まれないテーマの場合は利用?> <link href="<?php echo get_template_directory_uri(); ?>/css/lightbox.css" type="text/css" rel="stylesheet" media="all" /> <script src="<?php echo get_template_directory_uri(); ?>/js/lightbox.js" type="text/javascript"></script> <?php endif; ?>
functions.phpに入れることで、自動的に画像にrel=lightboxを追加する
//画像リンクのAタグをLightboxに対応するように付け替え
function add_lightbox_property( $content ) {
//プレビューやフィードモバイルなどで遅延させない
if( is_feed() || is_preview() || wp_is_mobile() )
return $content;//既に適用させているところは処理しない
if ( false !== strpos( $content, 'data-lightbox="image-set"' ) )
return $content;//Aタグを正規表現で置換
$content = preg_replace(
'/]+?)>\s*(]+?>)\s*<\/a>/',//Aタグの正規表現
'${2}',//置換する
$content );//投稿本文(置換する文章)return $content;
}
add_filter( 'the_content', 'add_lightbox_property', 11 );