chatm
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: 月別アーカイブページのページネーションフォーラム: 使い方全般
返信が含まれるトピック: 月別アーカイブページのページネーションご返答ありがとうございます。
・オリジナルテーマを自作し、wp6.2.2グーテンベルグで稼働させています。
・カテゴリー●●ページの一覧アーカイブページを作ってcategory-●●.phpというテンプレートにして、上記のコードを書いています。
・カテゴリーや子カテゴリーの一覧ならページ送りができるのですが、月別アーカイブだけがページ送りできません。
たぶん、ダッシュボードの表示件数は12件ですが、このカテゴリー●●だけfunction.phpで4件だけ表示させる設定をしています。
これが怪しいのかもしれません。下記の●●はカテゴリースラッグ名です。
4は表示件数です。これを外せば表示件数12件超えればページ送りできそうな気もしますが。//ページの表示件数を、特定のカテゴリーアーカイブや投稿タイプによって変更する function my_paginate(){ global $wp_query, $paged; $p_base = get_pagenum_link(1); $p_format = 'page/%#%'; if($word = strpos($p_base, '?')){ $p_base = get_option(home).(substr(get_option(home), -1 ,1) === '/' ? '' : '/') .'%_%'.substr($p_base, $word); } else{ $p_base .= (substr($p_base, -1 ,1) === '/' ? '' : '/') .'%_%'; } echo paginate_links(array( 'base' => $p_base, 'format' => $p_format, 'total' => $wp_query->max_num_pages, 'current' => ($paged ? $paged : 1), 'end_size' => 1, 'mid_size' => 2, )); } function change_posts_per_page($query) { if( is_admin() || ! $query->is_main_query() ){ return; } // 「●●」のカテゴリーページで表示件数を4件にする */ if ( $query->is_category( array('●●') )) { $query->set( 'posts_per_page', '4' ); return; } } add_action( 'pre_get_posts', 'change_posts_per_page' );
- この返信は1年、 4ヶ月前にchatmが編集しました。
フォーラム: 使い方全般
返信が含まれるトピック: 月別アーカイブページのページネーションご返答ありがとうございます。そのコードを追加してみても変化ありません。カテゴリー名ならページ送りできるのですが。
date.php など作って月別一覧のページ送りを別に設定すればうまくいくのでしょうか。フォーラム: 使い方全般
返信が含まれるトピック: 複数カテゴリーの一覧のページネーションありがとうございます!
確かに、
'paged' => $paged,
を入れたらページ送りできました。
どちらのコードでも良いのでしょうかね。念のため最初のコードの修正版を下記に記載します
<div class="news-list"> <dl> <?php $wp_query = new WP_Query(); $my_posts = array( 'post_type' => 'post', 'category_name' => 'news,estate', //スラッグ 'posts_per_page'=> '5', 'paged' => $paged, ); $wp_query->query( $my_posts ); if( $wp_query->have_posts() ): while( $wp_query->have_posts() ) : $wp_query->the_post(); ?> <dt><?php the_date('Y/m/d'); ?></dt> <dd> <a href="<?php the_permalink(); ?>"><h2><?php the_title(); ?></h2></a> <?php add_filter( 'excerpt_length', function ( $length ) { return 50; }, 999 ); the_excerpt(); ?> </dd> <?php endwhile; endif;//ループ終わり ?> </dl> </div><!-- /news-list --> <!-- pegenation --> <div class="pagination pagination-index"> <?php $big = 9999999999; $arg = array( 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 'current' => max( 1, get_query_var('paged') ), 'total' => $wp_query->max_num_pages, 'type' => 'list' ); echo paginate_links( $arg ); ?> </div>
フォーラム: 使い方全般
返信が含まれるトピック: 複数カテゴリーの一覧のページネーション以前は固定ページを作って複数カテゴリーの中から新着をリストにしていたのですが、その方法でも今回はページネーションがうまくいかなかったので、他にもいろいろな原因があるのだと思われます。表示設定やphpの名前を変更や、固定ページのテンプレートにしてもうまくいかなかったので。
なので、このページを「news」カテゴリーの新着情報として扱うことにしました。
複数のカテゴリーが入るリストですが、他のカテゴリーであっても、投稿記事のカテゴリー選択で、
「他のカテゴリー」+「news」を必ず選択させるということで、newsの一覧リストとして表示させました。
投稿記事を入力する時にカテゴリーを複数選択するので、スマートではなくなりますが、ページネーションはできるようになりました。複数のカテゴリーを選択するとURLの優先がありますが、Yoast SEOプラグインを入れて、投稿画面でカテゴリーのメインを選択し、記事のアドレスをカテゴリーのメインになるようにしました。
念のため設定したコードを記載します(前のコードではうまくページ送りできなかったので)
<div class="news-list"> <dl> <?php $paged = (int) get_query_var('paged'); $post_loop = new WP_Query( array( 'post_type' => 'post', 'category_name' => 'news,estate', //カテゴリースラッグ 'posts_per_page' => 5, 'paged' => $paged, ) );if ($post_loop->have_posts()): ?> <?php while ( $post_loop->have_posts() ) : $post_loop->the_post();?> <?php get_template_part('module_loop_post'); ?> <dt><?php the_date('Y/m/d'); ?></dt> <dd> <a href="<?php the_permalink(); ?>"><h2><?php the_title(); ?></h2></a> <?php add_filter( 'excerpt_length', function ( $length ) { return 50; }, 999 ); the_excerpt(); ?> </dd> <?php endwhile; endif; ?> </dl> </div><!-- /news-list --> <!-- pegenation --> <div class="pagination pagination-index"> <?php $big = 9999999999; $arg = array( 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 'current' => max( 1, get_query_var('paged') ), 'total' => $post_loop->max_num_pages, 'type' => 'list' ); echo paginate_links( $arg ); ?> </div>
- この返信は2年、 9ヶ月前にchatmが編集しました。
フォーラム: プラグイン
返信が含まれるトピック: 画像ポップアップ系のプラグインが機能しないお答え頂きましてありがとうござます。
仰る通り、header.php に<?php wp_head(); ?>
を入れ忘れておりました。
まさかこんな単純なミスで動かなくなるとは・・・
それだけでグーテンベルグのcssや、デフォルトのいろいろなものが挿入されなくなるのですね。
バタバタしてたので単純なミスに気が付かなくて残念な時間を費やしてしまいました。
お騒がせいたしました。教えて頂きましてありがとうございました!フォーラム: プラグイン
返信が含まれるトピック: 画像ポップアップ系のプラグインが機能しないすみません、Easy FancyBoxなどのポップアップが機能しないと書いたのですが、テーマを「Twenty Nineteen」に変えたら機能しましたので、wordpressのデフォルトで自動挿入される、Gutenberg用CSSやwp-json、他を読み込んでいないようです。function.phpにも特別に以前と変えたものは無いのですが、wordpressのデフォルトの設定が読み込まれなくなるという件で、何か原因が分かれば教えて頂けると助かります。
フォーラム: 使い方全般
返信が含まれるトピック: シングルページをカレント表示したいできました!
すみません!子カテゴリーをカレント表示させたかったので、
if ( $cat->parent ) {
にしたら思い通りの表示になりました。
度々教えて頂きましてありがとうございました!フォーラム: 使い方全般
返信が含まれるトピック: シングルページをカレント表示したいありがとうございます!できましたが、
申し訳ございません、シングルページが子カテゴリーに属するページでして、
現在は、シングルページで一番上の親がカレント表示されてしまいます。
その下の子カテゴリー(複数ある)をカレント表示させることはできますでしょうか。
何度も度々すみませんです・・・フォーラム: 使い方全般
返信が含まれるトピック: シングルページをカレント表示したいいつもありがとうございます。function.phpに入れてみましたが変わらずです。
(ifの行のemptyはエラーが出てたので削除してしまいましたが)
そもそも新しくなったwpのウィジェットがなんだかポンコツな感じもしますし、もう、アクティブ表示はなしにしようかしら、と思い始めています。
いつも丁寧なご対応をありがとうございます。フォーラム: 使い方全般
返信が含まれるトピック: ウィジェットに特定のカテゴリーだけ表示したいお答えいただきありがとうございます。
今回のコードを削除しても表示されてましたので、関係なかったですね。すみません!気になるので、教えていただいたリンク先にあった、GitHubのハックをfunction.phpに入れて通知を消してしまいました。(下記です)
remove_filter( 'admin_head', 'wp_check_widget_editor_deps' );
エラーメッセージは通知されなくなりましたが、
カテゴリー同士の優先度の設定にYoast SEOなども使っていますので、
バージョンアップで修正を待ちたいと思います。フォーラム: 使い方全般
返信が含まれるトピック: ウィジェットに特定のカテゴリーだけ表示したいすみません、デバックモードで作業していますが、ウィジェット画面の上部に下記のエラーが出ていました。表面上のサイトの動作には問題ないので、無視してもいいものか、少し気になりますが大丈夫でしょうか。
「`Notice: wp_enqueue_script() が誤って呼び出されました。
“wp-editor” script should not be enqueued together with the new widgets editor
(wp-edit-widgets or wp-customize-widgets).
詳しくは WordPress のデバッグをご覧ください。
(このメッセージはバージョン 5.8.0 で追加されました)
in /home/ドメイン/wp-includes/functions.php on line 5663`」フォーラム: 使い方全般
返信が含まれるトピック: ウィジェットに特定のカテゴリーだけ表示したいフォーラム: 使い方全般
返信が含まれるトピック: カテゴリーが重複している場合の子カテゴリー名取得できました!何度も教えて頂きましてありがとうございました。大変お手数お掛けしました。
最終のコードは下記です。(下記の「2」はカテゴリーIDです)<?php $cats = get_the_category(); foreach($cats as $cat){ if ( 2 === $cat->parent ) { echo '<span class="' . esc_attr( $cat->slug ) . '">' . esc_html( $cat->cat_name ) . '</span>'; } } ?>
フォーラム: 使い方全般
返信が含まれるトピック: カテゴリーが重複している場合の子カテゴリー名取得