タイトル通りです。WordPressの定番テーマであるcocoonのホームページトップにスライド画像を表示するためのカスタマイズをご紹介します。
スライド画像のショートコードを親テーマのphpファイルを編集せずに、子テーマのfunctions.phpで対応する、という意味です。
cocoon自体にスライド画像を表示する機能はありませんので、スライド画像自体はプラグイン「XO Slider」を使用しています。
プラグイン「Meta Slider」や「Smart Slider」でも対応できます♪
コードの公開
/*-------------------------------------------*/
/* トップページにスライド画像追加 */
/*-------------------------------------------*/
function my_theme_add_top_slide_img() {
if ( is_front_page() ) { //トップページのみ
echo do_shortcode('[xo_slider id="39"]');//スライドのショートコード
}
}
add_action( 'wp_header_logo_after_open', 'my_theme_add_top_slide_img' );
スライドショーのIDはそれぞれ違うので、
echo do_shortcode('[xo_slider id="39"]');//スライドのショートコード
の行(6行目)はそのプラグインのショートコードにするなり、IDを変更するなりして適宜変更してください。
トップページ以外の全ページにスライド画像を表示させるには、ifが不要ですのでこのように削除してください。
/*-------------------------------------------*/
/* トップページにスライド画像追加 */
/*-------------------------------------------*/
function my_theme_add_top_slide_img() {
echo do_shortcode('[xo_slider id="39"]');//スライドのショートコード
}
add_action( 'wp_header_logo_after_open', 'my_theme_add_top_slide_img' );
まとめ
cocoonのトップページにスライド画像を表示する方法は調べれば無限にヒットしますが、親テーマのphpを編集する方法ばかりでした。
親テーマの作りはかなり複雑でしたが便利なフックが隠されていたので今回使用してみました。
親テーマを編集したくない人は参考にしてください♪