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. Cocoonカスタマイズ依頼

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

サイドバーの表示・非表示について
 
共有:
通知
すべてクリア

[解決済] サイドバーの表示・非表示について

6 投稿
2 ユーザー
2 Reactions
5,364 表示
ろこ
(@lococo)
Prominent Member Registered
結合: 7年前
投稿: 830
トピックスターター  

サイドバー表示の仕様についてです。

Cocoon設定「サイドバーの表示状態」の設定から関数is_the_page_sidebar_visibleでサイドバーの表示・非表示を判定し、非表示の場合はクラス名no-sidebarが挿入されることによってクラス名sidebar以下がCSSでdisplay:none;となる仕様になっています。

 

Cocoonではウィジェットごとに表示・非表示を細かく調整できる機能がありますが、特定ページのサイドバーをまとめて切り替えたいとき、ひとつひとつ設定するのが面倒なので、まとめて切り替えることができるカスタマイズを実装しているところです。

その際、is_active_sidebar( 'sidebar' )
https://github.com/yhira/cocoon/blob/master/sidebar.php#L10
の判定を操作し、別のサイドバーに切り替える形にしたいのですが、is_active_sidebar( 'sidebar' )を操作すると、
https://github.com/yhira/cocoon/blob/master/lib/utils.php#L2269
に二重で非表示にする仕組みになっていることで表示できません。

is_active_sidebar( 'sidebar' )がfalseの場合、サイドバーのタグ自体が表示されないので、クラス名no-sidebarまで挿入する必要はないように思いますが、
https://github.com/yhira/cocoon/blob/master/lib/utils.php#L2269-L2271
の削除は可能でしょうか?


   
わいひら reacted
ろこ
(@lococo)
Prominent Member Registered
結合: 7年前
投稿: 830
トピックスターター  

追記です。

サイドバーはインデックス'sidebar'にウィジェットがなければ表示されない一方、モバイル用サイドバーボタンは'sidebar'にウィジェットがなくても'sidebar-scroll'にウィジェットがあれば、コンテンツが空の状態で表示されてしまいます。

この点についても、サイドバーと挙動が一致する('sidebar'にウィジェットがなければ非表示になる)よう修正お願いします。


   
ろこ
(@lococo)
Prominent Member Registered
結合: 7年前
投稿: 830
トピックスターター  

内容の変更で申し訳ありませんが、最初の投稿について訂正です。

display:none;での非表示だと他にも問題が出てきてしまったので、CSSでの非表示からPHPでの非表示に統一することで解決しました。
なので、2つ目の投稿にある「サイドバーとモバイル用サイドバーボタンの表示判定の統一」の修正のみよろしくお願いします。


   
わいひら
(@yhira)
Illustrious Memberサイト Admin
結合: 7年前
投稿: 17375
 

確かに'sidebar-scroll'を判定する必要はないですね。
承知いたしました。
こういうことでよろしいでしょうか。
https://github.com/yhira/cocoon/commit/e599b8ac49071569d5318025fe2f0c4993eeab4e


   
ろこ
(@lococo)
Prominent Member Registered
結合: 7年前
投稿: 830
トピックスターター  

https://github.com/yhira/cocoon/commit/e599b8ac49071569d5318025fe2f0c4993eeab4e

こちらにある修正の通りで間違いありません。
修正ありがとうございます。


   
わいひら reacted
わいひら
(@yhira)
Illustrious Memberサイト Admin
結合: 7年前
投稿: 17375
 

ご確認ありがとうございます!


   
共有:

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

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

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

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

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

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

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

タイトルとURLをコピーしました