サポート » 使い方全般 » カテゴリ一覧を出力しページ送りを追加

  • 解決済 boo4649

    (@boo4649)


    子カテゴリ(30ほど)を一覧にして出力をして、10件ごとにページ送りを追加したいのですが
    子カテゴリの表示はできるのですが、ページ送りがうまくいきません。

    カテゴリの出力はcategory.phpに下記のように記述しております。

    `
    <ul>
    <?php
    $categories = get_terms( ‘category’, array(
    ‘orderby’ => ‘count’,
    ‘hide_empty’ => 0,
    ‘child_of’ => 3,
    )
    );
    foreach($categories as $value):
    ?>

    <li><p><img src=”<?php echo WP_CONTENT_URL; ?>/uploads/<?php echo $value->slug;?>.jpg” alt=”<?php echo trim(wp_title(”, false)); ?>” /></p>
    <p><a>term_id); ?>”><?php echo $value->name;?></a></p></li>
    <li>
    <?php endforeach; ?>
    </li>
    </ul>`

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • モデレーター jim912

    (@jim912)

    category.phpでページ送りを行うのは、メインクエリーで404になる可能性があるため、オススメできません。
    固定ページでページテンプレートを作成する方が良いかと思います。前後ナビで良ければ以下のようなコードで。ページナビ系のプラグインを使う場合は、$wp_query->max_num_pages 等を書き換える必要が出てくるかと思います。

    <?php
    $items = 10;
    $categories = get_terms( 'category', array(
    	'orderby' => 'count',
    	'hide_empty' => 0,
    	'child_of' => 0,
    	)
    );
    $max_page = ceil( count( $categories ) / $items );
    $paged = get_query_var( 'paged' ) ? get_query_var( 'paged' ) : 1;
    $categories = array_slice( $categories, ( $paged - 1 ) * $items, $items );
    foreach($categories as $value):
    ?>
    ループ内の記述
    <?php endforeach; ?>
    <?php
    previous_posts_link();
    next_posts_link( null, $max_page );
    ?>
    トピック投稿者 boo4649

    (@boo4649)

    jim912さん

    アドバイスありがとうございます。
    category.phpおすすめできないのですね。
    固定ページで試してみます。

    トピック投稿者 boo4649

    (@boo4649)

    固定ページで作成しどうにか対応できました。

    アドバイスありがとうございます。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「カテゴリ一覧を出力しページ送りを追加」には新たに返信することはできません。