SWELLのTOPページには記事スライダーを表示することができます。
この記事スライダーは、初期状態だと投稿(post_type=”post”)以外の表示には対応していません。
SWELLのフォーラムに以下のような質問がありました。
post_slider.php の
‘post_type’ => ‘カスタム投稿タイプ名’,
でできました!
お騒がせしました。
特にレスもつくことなく、テンプレートファイル(post_slider.php
)を変更することで自己解決してしまったようです。
SWELLでカスタム投稿を使う場合、カスタム投稿に未対応な機能が多いので自力のカスタマイズが必要なことが多いです。
この記事では、テンプレートファイルを修正せずに、フックで記事スライダーが表示する投稿タイプをカスタマイズする方法をお伝えします。
この記事の内容
SWELLのTOPページの記事スライダーはフックでクエリパラメータを書き換えられる
記事スライダーのクエリが実行されるのは、loop_by_slider.php
です。
// クエリの取得
$the_query = new WP_Query( apply_filters( 'swell_pickup_post_args', $query_args ) );
ソースを見るとわかりますが、swell_pickup_post_args
というフックが仕込まれています。
このフックを使えば、クエリパラメータを書き換えることができますから、様々なカスタマイズが可能です。
SWELLのswell_pickup_post_args
フックでカスタム投稿(xxxx)に対応する例
wp_queryに渡すパラメータ配列がそのままフックで変更できますので、wp_queryが受け付ける内容であれば自由に変更可能です。
SWELLのフィルターフックの使い方については別記事で解説してます。
add_filter('swell_pickup_post_args',function($query_args){
//var_dump($query_args);
$query_args['post_type']='xxxx';
return $query_args;
});
あわせて読みたい

カスタマイズに必須!SWELLのフィルターフック・アクションフックの使い方 SWELLにはテーマ内に組み込まれた独自のフィルターフックやアクションフックがあります。 残念ながら、SWELLの公式サイトにフィルターフックやアクションフックの詳細な…
まとめ:SWELL TOPページの記事スライダーにカスタム投稿を表示する
誰かからの要望があったのでしょうか、SWELLにしては珍しいことにフックが仕込まれていたので簡単にカスタマイズできました。
SWELLのフォーラムは要望に対してはほぼスルーされます。しかし、作者は簡単に導入できるものはホイホイ組み入れる傾向があり、いつの間にか組み込まれていることは珍しくありません。
コメント