

下記のコードは記事の中にある画像（サムネイル以外）を全て表示させ、表示された画像が16枚を超えたら  
ページ送りをするものになる予定でした。

このコードで本当に画像が16枚を超えたらページ送りするものの予定でしたが、  
これですと記事の中に画像が20枚あったら20枚全部表示されてさらに他の記事も表示されないと  
ページ送りしてくれません。

どうしたら解決するでしょうか？

ちなみにこちらのサイトを参考にしました。  
<http://kachibito.net/wordpress/custom/stacking-posts-in-a-grid.html>

[code]

    <?php 
      $num_cols = 4; // カラム数
      $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; // ページネーション
      $args = array(  
            'posts_per_page' => 16, // 1ページに表示するポスト数
            'cat' => 0, // 表示させたい記事カテゴリのID
            'paged' => $paged
            ); 
        query_posts($args);
    
      if (have_posts()) :
        for ( $i=1 ; $i <= $num_cols; $i++ ) :
          $counter = $num_cols + 1 - $i;
        while (have_posts()) : the_post();
      if( $counter%$num_cols == 0 ) : ?>
    
    <?php $output = preg_match_all('/<img.+?src=[\'"]([^\'"]+)[\'"].*?>/i', $post->post_content, $matches);
    
        $all_img = $matches[1];
    if( !empty( $all_img) ) {
        foreach( $all_img as $img ) { ?>
    <?php echo '<img src="'.$img.'">' ?>
    <?php 
      endif;
      endwhile;
        rewind_posts();
          endfor;//ここからページネーション作成
            next_posts_link('&laquo; 前へ');
            previous_posts_link('先へ &raquo;');
          else:
          echo 'no posts';
    　}
    
[/code]

}  
endif; wp_reset_query(); ?>


CC BY-SA 4.0
2018-10-24T06:02:39.527
49601
2018-10-24T09:10:52.760
2018-10-24T09:10:52.760
30646
30646
question
php wordpress 画像
wordpress画像数に応じてページ送りさせたい


単純に構文エラーの問題について、

[code]

    if( !empty( $all_img) ) {
        foreach( $all_img as $img ) { ?>
    
[/code]

で開かれている2つのブロックが閉じられていないためでは。

直後にある`endif`よりまえにこれらのブロックをそれぞれ`}`で閉じてください。


CC BY-SA 4.0
2018-10-24T07:50:54.597
49608
2018-10-24T07:50:54.597
2376
49601
answer