Cocoonフォーラム

書き込みの前に以下の3点をご確認ください。
  1. 1つのトピックにつき1つの質問を書き込んでください
  2. 不具合・カスタマイズ対象ページのURLを提示高速化を無効にしてください
  3. 該当部分のキャプチャ・環境情報とともに書き込んでいただけると助かります

何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。

不具合・カスタマイズ対象ページのURL:

相談内容:

不具合の発生手順:

解決のために試したこと:

※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:

※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。

環境情報の取得方法はこちら。
https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
https://wp-cocoon.com/theme-trouble/

フォーラム利用ガイドリンク

  1. フォーラムガイドライン
  2. よくある質問と答え(FAQ)
  3. サポート対象外のケース
  4. 原因不明の不具合用トラブルシューティング
  5. トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw
  6. 真っ白画面でのエラーメッセージの確認方法
  7. ブラウザ環境チェックツール

フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。

特定のカテゴリをトップページの記事一覧...
 
共有:
通知
すべてクリア

[クローズ] 特定のカテゴリをトップページの記事一覧のリストから非表示にしたい

8投稿
2ユーザー
5Likes
378表示
Akira
(@akira)
Noble Member Registered
結合: 5年前
投稿: 1115
Akira - FacebookAkira - Twitter
Topic starter  

※ 以下のトピックからの続き

不具合・カスタマイズ対象ページのURL:  https://ayatoito.com/

相談内容:特定のカテゴリをトップページの新着記事一覧のリストから非表示にしたいです。
(カテゴリー一覧を別のメニューとして配置しているためです。)
Local環境にて構築した内容を本番サーバへ移植した際、上記内容が実現できず悩んでいます。
もしご教示を頂けるようでしたら幸いです。

入力したコード(Visual Studio Codeにて編集、FTPサーバへアップロード)
■非表示できないWPの環境(本番サーバ)  https://ayatoito.com/
------------------------------------------------------------------------
記入箇所Cocoon Child: テーマのための関数 (functions.php)

//トップページから特定のカテゴリの除外
function exclude_category( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( 'cat', '-13' );//マイナスをつけてカテゴリIDを除外する
}
}
add_action( 'pre_get_posts', 'exclude_category' );
------------------------------------------------------------------------
※本番とローカル環境のカテゴリーIDが異なる為、数値は異なります。

□表示できているWPの環境(local環境)  http://localayatoitocom.local/
(Visual Studio Codeにて編集、ローカルのフォルダにアップロード)
------------------------------------------------------------------------
記入箇所>Cocoon Child: テーマのための関数 (functions.php)

//トップページから特定のカテゴリの除外
function exclude_category( $query ) {
if ( $query->is_home() && $query->is_main_query() ) {
$query->set( 'cat', '-11' );//マイナスをつけてカテゴリIDを除外する
}
}
add_action( 'pre_get_posts', 'exclude_category' );
------------------------------------------------------------------------

解決のために試したこと:

○問題なく特定のカテゴリがリストに表示されていないローカル環境のphpを本番環境へ移植を何度か繰り返す
○カテゴリーIDの確認
○コードに半角文字が無いかチェック(Visual Studio Codeを使用)
○管理画面よりキャッシュのクリアを繰り返す⇒変化なし
○Cocoon Child (functions.php)に記入した他のコードを削除し、
上に挙げたコードのみ記入を行い確認⇒変化なし
○実現できいない本番「」のコードのみis_home()⇒ is_front_page()に変更してみる⇒変化なし
○実現できているLocal「  http://localayatoitocom.local/」環境で、カテゴリーIDを変えて様子をみる⇒他のカテゴリでも実現できる
○実現できていない本番環境をローカル環境に再度作成。「  http://localayatoitocom02.local/」
⇒Localにて非表示にできない

環境情報:
■非表示できないWPの環境(本番サーバ)PHPバージョン:7.4.21 Cocoonバージョン:2.3.8
https://ayatoito.com/
----------------------------------------------
サイト名:AYA ITO
サイトURL:  https://ayatoito.com
ホームURL:  https://ayatoito.com
コンテンツURL:/wp-content
インクルードURL:/wp-includes/
テンプレートURL:/wp-content/themes/cocoon-master
スタイルシートURL:/wp-content/themes/cocoon-child-master
親テーマスタイル:/wp-content/themes/cocoon-master/style.css
子テーマスタイル:/wp-content/themes/cocoon-child-master/style.css
WordPressバージョン:5.8.2
PHPバージョン:7.4.21
ブラウザ:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
サーバーソフト:Apache
サーバープロトコル:HTTP/1.1
エンコーディング:gzip, deflate, br
言語:ja,en-US;q=0.9,en;q=0.8,fr;q=0.7
----------------------------------------------
テーマ名:Cocoon
バージョン:2.3.8
カテゴリ数:3
タグ数:15
ユーザー数:2
----------------------------------------------
子テーマ名:Cocoon Child
バージョン:1.1.3
style.cssサイズ:845バイト
functions.phpサイズ:959バイト
----------------------------------------------
Gutenberg:1
AMP:0
PWA:1
Font Awesome:4
Auto Post Thumbnail:1
Retina:1
ホームイメージ:/wp-content/uploads/2021/12/top2000_1200-min.jpg
----------------------------------------------
ブラウザキャッシュ有効化:0
HTML縮小化:0
CSS縮小化:0
JavaScript縮小化:0
Lazy Load:0
WEBフォントLazy Load:0
----------------------------------------------
利用中のプラグイン:
BackWPup 3.10.0
Invisible reCaptcha 1.2.3
Real-Time Find and Replace 4.0.2
----------------------------------------------

□表示できているWPの環境(local環境)PHPバージョン:7.4.1 Cocoonバージョン:2.3.7.2
  http://localayatoitocom.local/」
----------------------------------------------
サイト名:AYA ITO
サイトURL:  https://localayatoitocom.local
ホームURL:  https://localayatoitocom.local
コンテンツURL:/wp-content
インクルードURL:/wp-includes/
テンプレートURL:/wp-content/themes/cocoon-master
スタイルシートURL:/wp-content/themes/cocoon-child-master
親テーマスタイル:/wp-content/themes/cocoon-master/style.css
子テーマスタイル:/wp-content/themes/cocoon-child-master/style.css
WordPressバージョン:5.8.2
PHPバージョン:7.4.1
ブラウザ:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
サーバーソフト:nginx/1.16.0
サーバープロトコル:HTTP/1.0
エンコーディング:gzip, deflate, br
言語:ja,en-US;q=0.9,en;q=0.8,fr;q=0.7
----------------------------------------------
テーマ名:Cocoon
バージョン:2.3.7.2
カテゴリ数:3
タグ数:6
ユーザー数:2
----------------------------------------------
子テーマ名:Cocoon Child
バージョン:1.1.3
style.cssサイズ:845バイト
functions.phpサイズ:959バイト
----------------------------------------------
Gutenberg:1
AMP:0
PWA:1
Font Awesome:4
Auto Post Thumbnail:0
Retina:1
ホームイメージ:/wp-content/uploads/2021/12/top2000_1200-min.jpg
----------------------------------------------
ブラウザキャッシュ有効化:0
HTML縮小化:0
CSS縮小化:0
JavaScript縮小化:0
Lazy Load:0
WEBフォントLazy Load:0
----------------------------------------------
利用中のプラグイン:
BackWPup 3.10.0
Invisible reCaptcha 1.2.3
Real-Time Find and Replace 4.0.2
----------------------------------------------

■表示できていないWPの環境02(本番の状態をlocal環境にて再構築)
  https://localayatoitocom02.local/w」

----------------------------------------------
サイト名:AYA ITO
サイトURL:  https://localayatoitocom02.local
ホームURL:  https://localayatoitocom02.local
コンテンツURL:/wp-content
インクルードURL:/wp-includes/
テンプレートURL:/wp-content/themes/cocoon-master
スタイルシートURL:/wp-content/themes/cocoon-child-master
親テーマスタイル:/wp-content/themes/cocoon-master/style.css
子テーマスタイル:/wp-content/themes/cocoon-child-master/style.css
WordPressバージョン:5.8.2
PHPバージョン:7.3.5
ブラウザ:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36
サーバーソフト:nginx/1.16.0
サーバープロトコル:HTTP/1.0
エンコーディング:gzip, deflate, br
言語:ja,en-US;q=0.9,en;q=0.8,fr;q=0.7
----------------------------------------------
テーマ名:Cocoon
バージョン:2.3.8
カテゴリ数:3
タグ数:15
ユーザー数:2
----------------------------------------------
子テーマ名:Cocoon Child
バージョン:1.1.3
style.cssサイズ:845バイト
functions.phpサイズ:965バイト
----------------------------------------------
Gutenberg:1
AMP:0
PWA:1
Font Awesome:4
Auto Post Thumbnail:1
Retina:1
ホームイメージ:/wp-content/uploads/2021/12/top2000_1200-min.jpg
----------------------------------------------
ブラウザキャッシュ有効化:0
HTML縮小化:0
CSS縮小化:0
JavaScript縮小化:0
Lazy Load:0
WEBフォントLazy Load:0
----------------------------------------------
利用中のプラグイン:
Invisible reCaptcha 1.2.3
Real-Time Find and Replace 4.0.2
----------------------------------------------


   
わいひら reacted
Akira
(@akira)
Noble Member Registered
結合: 5年前
投稿: 1115
Akira - FacebookAkira - Twitter
Topic starter  

>> ryokryokryok さん

Cocoon 設定 > インデックスの「フロントページタイプ」と「カードタイプ」で何を設定されているか教えていただけませんか?

設定してみた所、トップの画面に除外カテゴリー(works)の除外が適用されず、

この理由が分かりません。

カテゴリー(works)のリストページの方で除外が適用されてしまいました。

こちらは、そうなりますね。


   
わいひら reacted
ryokryokryok
(@ryokryokryok)
Active Member Registered
結合: 10か月前
投稿: 7
 

@akira様

 

返信が遅くなってしまい、申し訳ございません。
ご連絡を頂きありがとうございます。
また、トピックを適切な箇所に立ち上げて頂き誠にありがとうございます。
「テストトピック」のまま返信をしてしまい、
お手数をお掛けしてしまいました。申し訳ございません。

管理画面>Cocoon 設定>インデックスの設定は下記内容になります。

○フロントページタイプ
カテゴリごと(3カラム)※サイドバーを表示しないレイアウト向け。表示数は3の倍数推奨。

○カードタイプ
縦型カード2列
[チェック]スマホ端末で縦型&タイル型のエントリーカードを1カラムにする

尚、フォーラムにご質問しました内容が
実現できているローカル環境「 http://localayatoitocom.local/ 」と
できていない本番の環境「 https://ayatoito.com/ 」のインデックスの設定に差異はございませんでした。
ローカル同士の管理画面になりますが、(左)本番移植前/目標の実現できている(右)本番移植後からインストール/実現できていない スクリーンショットを添付致します。

This post was modified 9か月前 by わいひら

   
ryokryokryok
(@ryokryokryok)
Active Member Registered
結合: 10か月前
投稿: 7
 
投稿者:: @ryokryokryok

誠に申し訳ございません!

投稿後に確認しましたところ、リストページから任意のカテゴリの非表示が出来ておりました。

別のテスト投稿記事と混乱してしまったようでした。

心よりお詫び申し上げます。 

「特定のカテゴリに属する投稿をアーカイブにまとめて出力しない」方法ですと

カテゴリのリストページからも非表示になってしまうので、添付画像のような構成を実現できれば大変嬉しいのですが…

 

 

@akira様

 

 

 

返信が遅くなってしまい、申し訳ございません。
ご連絡を頂きありがとうございます。
また、トピックを適切な箇所に立ち上げて頂き誠にありがとうございます。
「テストトピック」のまま返信をしてしまい、
お手数をお掛けしてしまいました。申し訳ございません。

 

管理画面>Cocoon 設定>インデックスの設定は下記内容になります。

 

○フロントページタイプ
カテゴリごと(3カラム)※サイドバーを表示しないレイアウト向け。表示数は3の倍数推奨。

 

○カードタイプ
縦型カード2列
[チェック]スマホ端末で縦型&タイル型のエントリーカードを1カラムにする

 

尚、フォーラムにご質問しました内容が
実現できているローカル環境「 http://localayatoitocom.local/」と
できていない本番の環境「 https://ayatoito.com/」のインデックスの設定に差異はございませんでした。
ローカル同士の管理画面になりますが、(左)本番移植前/目標の実現できている(右)本番移植後からインストール/実現できていない スクリーンショットを添付致します。

 

 

 


   
ryokryokryok
(@ryokryokryok)
Active Member Registered
結合: 10か月前
投稿: 7
 

Akira様

五月雨にご連絡してしまい、誠に申し訳ございません。

上記内容を投稿後、実現できているローカル環境を検証し、以下の内容に気付きました。
非表示にしたい任意のカテゴリ記事がインデックスの2ページ目以降にある場合、
実現したい結果が得られます。

【TOP】 https://ayatoito.com/ (任意のカテゴリ記事がリストに表示されてしまう)
もっと見るボタンを押す⇒
【TOPリストの続き】 https://ayatoito.com/?cat=0 (任意のカテゴリ記事がリストに表示されない)
ページネーションのページ数のボタンを押す⇒
【TOPリストの続き2】 https://ayatoito.com/page/2/?cat=0 (任意のカテゴリ記事がリストに表示されない)

※検証のため、先にAkira様よりアドバイス頂きました管理画面の設定はリセットさせて頂きました。

※デザインの為、ページネーションの「次へ」をcssで非表示にしている為、現状、こちらの検証は行っておりません

差し当たっての私の個人的な解決方法としては、
非表示にしたいカテゴリの投稿記事の日時などを調整し、
2ページ以降に設置して望む結果を得る事になりますが、
コードの表記の問題なのか、他に要因があるのか分からず、
ご共有させて頂ければと思いました。

 に挙げさせていただきましたメッセージも含め、

言葉が足らず、アップ方法も上手くできておらず、分かりにくい部分も多々あるかと思います。

スムーズにご質問できず誠に申し訳ございません。

This post was modified 9か月前 by わいひら

   
Akira
(@akira)
Noble Member Registered
結合: 5年前
投稿: 1115
Akira - FacebookAkira - Twitter
Topic starter  

このような方法でご希望に沿う動作になるでしょうか。

まず、お書きになっているコードのうち、下記の部分をコメントアウトします。 

//add_action( 'pre_get_posts', 'exclude_category' );

次に、子テーマの functions.php に、get_category_index_list_entry_card_tag() 関数を追加します。lib/page-settings/index-funcs.php の 290 行目から 338 行目までの部分です。

最後に、子テーマに追加したget_category_index_list_entry_card_tag() のうち、下記の部分を…

//カテゴリーの除外
$exclude_category_ids = get_archive_exclude_category_ids();
if (!$categories && $exclude_category_ids && is_array($exclude_category_ids)) {
  $args += array(
    'category__not_in' => $exclude_category_ids,
  );
}

このように変更します。

https://notepad.pw/share/va3e1lvw

 以下の部分で非表示にしたいカテゴリーの ID を指定します。

// 除外するカテゴリーを配列で指定する
$ayatoito_exclude_category_ids = [13];

複数のカテゴリーを指定する場合は、, で区切ります。

// 除外するカテゴリーを配列で指定する
$ayatoito_exclude_category_ids = [13, 20];

   
わいひら reacted
Akira
(@akira)
Noble Member Registered
結合: 5年前
投稿: 1115
Akira - FacebookAkira - Twitter
Topic starter  

上記のカスタマイズを行った上で ↓ のコメントアウトを解除すれば、 https://ayatoito.com/?cat=0  でもカテゴリーを非表示にできると思います。

//add_action( 'pre_get_posts', 'exclude_category' );

   
わいひら reacted
ryokryokryok
(@ryokryokryok)
Active Member Registered
結合: 10か月前
投稿: 7
 

Akira様

御指南を頂き、誠にありがとうございます。
頂きましたアドバイスを元に子テーマ>function.phpの編集を行いました所、
トップページでも実現したい結果を得る事ができました!

Akira様より指示いただきました

get_category_index_list_entry_card_tag() 関数を追加します。
lib/page-settings/index-funcs.php の 290 行目から 338 行目までの部分です。

など、始めは該当箇所のコピーに少し自信がなかったのですが、githubで分かりやすくご共有頂き、
迷うことなく作業できました。

get_category_index_list_entry_card_tag() 部分の変更など、
私の今の力では解読できないので、少しずつ理解していければと考えております。

余談になってしまいますが、Akira様のサイトのリンクからサイトを拝見させて頂きました。
スタイリッシュで学ぶ内容が多く感動致しました。

年の瀬のお忙しい中、稚拙な質問に丁寧にご回答を頂き誠にありがとうございました。
Akira様、Cocoonを制作された わいひら様、どうか良い年をお迎えくださいませ。

                             ryok


   
わいひら reacted
共有:

問題の解決に至った場合には、トピック冒頭の「解決済み」リンクをクリックしていただけますと幸いです。

wpForoの解決済みリンク

また、有用な返信があった場合は「いいね!」リンクもご活用ください。返信者の励みになります。

wpForoのいいねリンク

「いいね!」機能はフォーラム登録者のみが利用できる機能です。

CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。

フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。

最近の書き込みはこちら。

詳細なカスタマイズ依頼をするならこちら。