web-dev-qa-db-ja.com

ループ前後の出力

ループにフックしたいのですが。 have_posts()おそらく?前後にいくつかのコードを出力します。テーマを編集する必要なしにプラグインでそれを使用できるようにこれのためのフィルタはありますか?

4
Poe

関数the_post()source )は、ループ内で最初に使用されたときにアクションloop_startを起動します。これはeveryWP_Queryループで使用されているので、現在のクエリが 'メイン'のものであるかどうかを確認することをお勧めします(それがターゲットのクエリであると仮定して)。

add_action( 'loop_start', 'wpse107113_loop_start' );
function wpse107113_loop_start( $query ){
     if( $query->is_main_query() ){

     }
}

前回have_posts()が呼び出されると、上記のようにアクションloop_endsource )が起動されます。

add_action( 'loop_end', 'wpse107113_loop_end' );
function wpse107113_loop_end( $query ){
     if( $query->is_main_query() ){

     }
}
7
Stephen Harris