サイト内検索
Cocoonフォーラム

書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
不具合報告
19
投稿
3
ユーザー
22
Reactions
190
表示
トピックスターター 2025年4月6日 21:19
----------------------------------------------
テーマ名:Cocoon
バージョン:2.8.5.3
カテゴリー数:18
タグ数:122
ユーザー数:1
----------------------------------------------
●投稿
投稿タイトル「日記、コーヒー」に、カテゴリー「日記」「コーヒー」を設定した。
●Cocoon設定
[インデックス]
→表示カテゴリー「コヒー」
→除外カテゴリー「日記」
●現象
フロントページタイプが「タブ一覧」、「カテゴリーごと」のとき
新着記事から投稿タイトル「日記、コーヒー」は表示されない。
しかし「コーヒー」タブ、カテゴリーには表示される。★バグ
さらに、「もっと見る」ボタンをクリックし、カテゴリーページ「コーヒー」には投稿タイトル「日記、コーヒー」は表示されない。
●原因
以下で、新着記事以外は常に$categoriesに値が入るため、常にfalseとなり、除外カテゴリーが設定されない。
●対策
!$categoriesを削除。
●フロントページが上記以外の場合
フロントページ「一覧(デフォルト)」「新着記事」とカテゴリーページは、メインクリーから除外される。
また、「カテゴリーごと(2カラム)」「カテゴリーごと(3カラム)」はnew_listを代用して出力しており、除外カテゴリーを反映している。
わいひら and エックスサーバー 高澤 reacted
2025年4月8日 10:34
わいひら(@yhira)さん
お疲れ様です。
本件に関して対応が完了しましたので、お手すきでPRのご確認をお願いいたします。
【対応内容】
- tmp\list-tab-index.phpの44行目付近の「
for ($i=0; $i < count($cat_ids) && $i < $cat_count; $i++):
」内のクエリパラメーターにて、「'category__not_in' => get_archive_exclude_category_ids(),
」を追加 - 「
<?php else: ?><h2>NOT FOUND</h2><p>投稿が見つかりませんでした。</p>
」を追加 - lib\page-settings\index-funcs.phpのget_category_index_list_entry_card_tag()関数の「//カテゴリーの除外」のif文の「
!$categories &&
」を削除 - 「カテゴリーごと」「2カラム」「3カラム」の場合にNOT FOUND時に「もっと見る」ボタンが表示しないように修正
わいひら reacted
2025年4月9日 09:53
@chu-ya さん
大変お待たせいたしました。
本件関して、該当部分を修正いたしましたことをご報告いたします。
ソースコードの方もご参考にさせていただきました、ご教示いただきありがとうございました!
よろしくお願いいたします。
この投稿は3週間前ずつエックスサーバー 高澤に変更されました
トピックスターター 2025年4月9日 11:21
@s_takazawa さん
コードを確認しましたが、疑問があり見直し願います。
投稿数のキーで'count_' . $loop_indexとしている部分がありますが、countでいいのでは?
分ける必要ありますか?
●tmp/list-category-columns.php
並列処理されないため、$unique_count_keyでキーを分けることなくcountでよく。
●tmp/list-tab-index.php
以前のソースから書かれているが不要では。
●lib/html-forms.php
$loop_indexは不要。
不要。
'count'を渡せばよく。
わいひら and エックスサーバー 高澤 reacted
2025年4月9日 13:39
ご指摘いただきありがとうございます!
修正すべき箇所がありそうで、@chu-ya さんの方でご教示いただいた箇所を含めて、まず今一度見直してみようとおもいます。
この投稿は3週間前 2回ずつエックスサーバー 高澤に変更されました
わいひら reacted
2025年4月9日 14:15
@chu-ya さん
インデックスとして処理した件について、おまとめいたしました。
説明に不備がありましたら申し訳ありません。
インデックスとした理由を現象ベースでご説明すると、仮に「count」で渡した場合、例えば前提として「フロントページタイプ」で「カテゴリーごと(2カラム)」を設定し、「カラムA」では出力ページ数が0、「カラムB」では1以上とします。
「カラムA」は「もっと見る」ボタンを非表示とすべきですが、「カラムB」にも「0」が反映されてしまい「もっと見る」ボタンが非表示になってしまう、という現象が起こってしまうため、解決策としてインデックス(count_【一意なID】)とさせていただきました。
(countとすると、例えばカラムAに対して「0」が送られた場合、カラムBにも「0」が送られてしまうというイメージです)
コード的には、各カラムごとに「記事数」を渡してif文による条件分岐したかったため、インデックス処理をしたという背景になります。
私としてもベストなソースコードにできればと思いますため、必要があれば修正できればと思います。
この投稿は3週間前 3回ずつエックスサーバー 高澤に変更されました
わいひら reacted
2025年4月9日 14:21
また、一旦上記の実装のままとした場合、現状記事数が正しく処理されず、添付画像のよに出力ページが1の場合に「もっと見る」ボタンが出力されない不具合が起こっておりました。
lib\html-forms.phpでのset_query_var()関数での「$count++」の位置が正しくなかったため、こちら修正できればとおもいます。
この投稿は3週間前 2回ずつエックスサーバー 高澤に変更されました
わいひら reacted
トピックスターター 2025年4月9日 14:34
「カラムA」は「もっと見る」ボタンを非表示とすべきですが、「カラムB」にも「0」が反映されてしまい「もっと見る」ボタンが非表示になってしまう、という現象が起こってしまうため、解決策としてインデックス(count_【一意なID】)とさせていただきました。
現象となる根本原因が曖昧で捉えてるのは問題です。以下が根本ですよね?
lib\html-forms.phpでのset_query_var()関数での「$count++」の位置が正しくなかったため
generate_widget_entries_tagはカラムA、カラムBごとに処理される。
カラムAのときget_query_var('count')=0となり、「もっと見る」ボタンは非表示。
カラムBのときget_query_var('count')>0で返却され、「もっと見る」ボタンは表示されると思いますが?
処理はシーケンシャルなので、キーを分ける必要はないです。
再度、見直し願います。
例えばmglobal変数を用いるのと同じで、global $HAS_POSTS = true/falseでカテゴリーに判定するのと同じです。
わいひら and エックスサーバー 高澤 reacted
2025年4月9日 15:19
@chu-ya さん
ご教示いただきありがとうございます、再度見直し致しました。
インデックスとしない方が追加のコードの記述量や可読性や保守性など考えてこちらがベストかと思いますので、修正できればと思います🙇
この投稿は3週間前 2回ずつエックスサーバー 高澤に変更されました
わいひら reacted
2025年4月9日 18:09
わいひら さん
お疲れ様です。
たびたび申し訳ありません。
本件に関して、PR内容に不具合が見られたため、以下新規PRにてご対応いたしましたのでご報告いたします。
https://github.com/xserver-inc/cocoon/pull/270
対応内容としては、以下になります。
- 「もっと見る」ボタンの表示の不具合の修正
- カラムごとの「もっと見る」ボタン表示の処理のインデックスを利用している箇所をリファクタリング
お手数おかけしてしまい恐縮ですが、お手すきでご確認お願いいたします。
わいひら reacted
トピックスターター 2025年4月9日 20:50
わざわざ$current_countに代入しなくてもif文でset_query_var('count')を参照すればよく。
修正してください。
わいひら and エックスサーバー 高澤 reacted
トピックスターター 2025年4月9日 20:53
@yhira さん
わざわざ$current_countに代入しなくてもif文でset_query_var('count')を参照すればよく。
修正してください。
わいひら and エックスサーバー 高澤 reacted
トピックスターター 2025年4月10日 20:24
----------------------------------------------
テーマ名:Cocoon
バージョン:2.8.5.3
カテゴリー数:20
タグ数:123
ユーザー数:1
----------------------------------------------
対策されていることを確認しました。
本件をクローズとします。
現状get_query_varを使いまわす予定はないのと、変数を使うとわずかにメモリを消費するため、変数が無い形がベストでしたね
折角、ゼロ件データーの仕様ミスを見つけたのはいいですが、もう少し丁寧に作業してください。
手戻りが多くありませんか?
私の実務での時間単価はクソ高いですので笑。
わいひら and エックスサーバー 高澤 reacted
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。