サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
トピックスターター 2021年10月13日 11:21
素晴らしいテーマありがとうございます。
●カスタマイズ内容:サイドバーにタブ切り替えを付ける
●相談内容:読み込み時にサイドバーウィジェットのみ「checked="checked"」が反映されない
他のサイトを参考にして、タブ切り替え用のコード(ラジオボタン使用)を記載し、サイドバーウィジェットに記載しました。
(目的はランキングの月間、週間の切り替え表示。後でショートコードを使う)
HTMLでラジオボタンの2つのうち、1つ目のタブにデフォルトでチェックを入れ、読み込んだ際にはその内容が表示されるコードです。
しかし、読み込んだ際に1の内容が表示されず、2つのラジオボタンのどちらもチェックが入っていない状態です。(読み込んだ後にタブをクリックした時は正常に表示されます。)
不思議なことに「サイドバースクロール追従」「コンテンツ上部」など、「サイドバー」以外では、狙い通りに表示されます。
「サイドバー」だけなぜ動作しないのか分かりません。
※サイトはテスト用サイトで、ほぼデフォルトのままです。高速化設定も行っていません。
何か分かることがあれば、どうぞよろしくお願い申し上げます。
(HTML)
<div class="tab-wrap">
<input id="TAB-01" type="radio" name="TAB" class="tab-switch" checked="checked" /><label class="tab-label" for="TAB-01">All</label>
<div class="tab-content">ALLの内容
</div>
<input id="TAB-02" type="radio" name="TAB" class="tab-switch"/><label class="tab-label" for="TAB-02">Weekly</label>
<div class="tab-content">Weeklyの内容
</div>
</div>
(CSS)
https://codepen.io/mt1212/pen/abyOZjP
サイトの現状
----------------------------------------------
サイト名:テストサイト
サイトURL: https://test03.tsuchie.org
ホームURL: https://test03.tsuchie.org
コンテンツ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.1
PHPバージョン:7.4.23
ブラウザ:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36
サーバーソフト:Apache
サーバープロトコル:HTTP/1.1
言語:ja,en-US;q=0.9,en;q=0.8
----------------------------------------------
テーマ名:Cocoon
バージョン:2.3.6.3
カテゴリ数:1
タグ数:0
ユーザー数:1
----------------------------------------------
子テーマ名:Cocoon Child
バージョン:1.1.3
style.cssサイズ:1696バイト
functions.phpサイズ:203バイト
----------------------------------------------
Gutenberg:1
AMP:0
PWA:0
Font Awesome:4
Auto Post Thumbnail:0
Retina:0
ホームイメージ:/wp-content/themes/cocoon-master/screenshot.jpg
----------------------------------------------
ブラウザキャッシュ有効化:0
HTML縮小化:0
CSS縮小化:0
JavaScript縮小化:0
Lazy Load:0
WEBフォントLazy Load:0
----------------------------------------------
利用中のプラグイン:
SiteGuard WP Plugin 1.6.0
----------------------------------------------
2021年10月13日 15:32
● 原因
サイドバーで動作しないのは、「モバイルメニュー」が原因です。
Cocoon では、レスポンシブ対応や AMP 対応のために、サイドバーのウィジェットは、モバイルメニューで開くサイドバーでも使われます。つまり、1 つのウィジェットが 2 つあります。
id などは重複しない処理がされているのですが、name は重複します。そのため、同じ name を持つ input が 4 つあります。
その結果、モバイルメニューで開くサイドバーでは動作しています(※ 添付画像)。一方、パソコンで確認できるサイドバーでは動作していません。
※ type="radio" は同時に 1 つしか選択できないため、HTML で後にあるモバイルメニューで開くサイドバーの input が選択されている。
● 解決方法
name を置換すれば解決します。
下記リンクのコードを子テーマの functions.php に追加します。モバイルメニューで開くサイドバーの name を置換するものです。手間をかけずに書いたため、str_replace で置換しています。
https://notepad.pw/share/83cvtx41y
name の slideTAB は適当につけました。
この投稿は3年前ずつAkiraに変更されました
2021年10月14日 07:40
ご丁寧なご回答をいただき、ありがとうございます。
コードを追加したら上手く表示されました!
モバイルメニューが関係していたとは思いもかけませんでした。
勉強になりました。
2021年10月14日 09:11
ルールをよく読まず、申し訳ございません。
最初の質問でソースコードを直接貼り付けてしまいました。
編集できないようですが、どのようにしたらよいでしょうか。
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。