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

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

Cocoon設定が真っ白
 
共有:
通知
すべてクリア

Cocoon設定が真っ白

6 投稿
2 ユーザー
0 Reactions
16 表示
(@homare)
Active Member Registered
結合: 14時間前
投稿: 3
トピックスターター  

HP内容がボリュームがあるので、プラグイン等を全部オフにすることが難しく、この環境で

cocoon設定の画面が以前同様使えるものと、使えないものがでてきました。

https://jikka-katazuke.jp/

どうしたらよいでしょうか・・・すべてプラグインをオフにしなくても検証のできるような箇所がありましたらお教えください。

Xサーバー PHP 8.3.21 環境になります。


このトピックは3時間前からhomareに変更されました
このトピックは2時間前からhomareに変更されました

   
引用
トピックタグ
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 5年前
投稿: 9148
 

homareさん

投稿者:: @homare

すべてプラグインをオフにしなくても検証のできるような箇所がありましたらお教えください。

以下のプラグインを使うと、ログインユーザーのみ、プラグインを無効にしたり、テーマを変更できたりします。
通常のサイト表示(非ログインユーザーに表示される内容)には、影響を与えません。

ヘルスチェック & トラブルシューティング (Health Check & Troubleshooting)
https://ja.wordpress.org/plugins/health-check/

WordPressのトラブルシューティングを劇的に楽にする「Health Check & Troubleshooting」プラグインの使い方。
https://nelog.jp/health-check-and-troubleshooting-plugin

 

ただ・・・。

必ずしも、プラグインが原因とは言えない気はします。
(まだ原因がはっきりしないという意味で)

  • デベロッパーツールのConsole部分に、エラーが表示されていないか
  • エラーログに、何か落ちていないか

上記等を確認しても、良いと思います。

 

 

デベロッパーツールについては。
Windows/Chromeであれば、「PF12」キーで起動できます。

Consoleは、デフォルトでは右下に表示されていると思います。


この投稿は2時間前 4回ずつmk2に変更されました

   
返信引用
(@homare)
Active Member Registered
結合: 14時間前
投稿: 3
トピックスターター  

mk2さん、ありがとうございます。

そういえば数日前にイベントカレンダーからのエラーメールが来たのですが、HPの動作にどこもエラーがなく?

スルーしていました。

そのメールが来る前からCocoon設定の真っ白は見受けられていた気がします。

まずはヘルスチェック & トラブルシューティング (Health Check & Troubleshooting)を試してみます。



   
返信引用
(@homare)
Active Member Registered
結合: 14時間前
投稿: 3
トピックスターター  

mk2さん

ありがとうございます!

なんと思った通りイベントカレンダープラグインが原因という事が発覚しました。イベントカレンダーを適用した瞬間にCocoon設定が真っ白に・・・

先日こんな恐怖のメールが送られてきたのですが、イベントカレンダーでの閲覧に問題がなかったので、断定できませんでした。

まずはプラグイン原因が発覚して一歩前に進みました。

 

---------------------------------------------------

WordPress には、サイトでプラグインやテーマが致命的なエラーを発生させた場合にそれを検知してこの自動メールでお知らせする機能があります。

今回の場合、WordPress がプラグイン The Events Calendar でエラーを捉えました。

まずはじめに、ご自分のサイト (https://jikka-katazuke.jp/&source=gmail&ust=1760272221739000&usg=AOvVaw1V77qwVPQQGnTNy_TjL1o 1"> https://jikka-katazuke.jp/ ) を開き、目に見える問題がないか確認してください。次に、エラーが発生したページ (https://jikka-katazuke.jp/wp-admin/admin.php?page%3Dtheme-settings&source=gmail&ust=1760272221739000&usg=AOvVaw18Fo_KWAAQQP7tgwarOQL T"> https://jikka-katazuke.jp/wp-admin/admin.php?page=theme-settings ) を開き、同様に問題がないか確認してください。

この問題をさらに調査するにはサーバーホストに連絡してみてください。

もしサイトが壊れていてダッシュボードに正常に接続できない場合、WordPress には特別な「リカバリーモード」があります。これによりダッシュボードに安全にログインし、さらに調査をすることができます。

https://jikka-katazuke.jp/wp-login.php?action%3Denter_recovery_mode%26rm_token%3DWfBj1ppKHklgxQTgfHSIFb%26rm_key%3DSBpDlgKWGAriOkfLSixVcE&source=gmail&ust=1760272221739000&usg=AOvVaw2RbF0V1UMNgqvQvsQFwxz 3"> https://jikka-katazuke.jp/wp-login.php?action=enter_recovery_mode&rm_token=WfBj1ppKHklgxQTgfHSIFb&rm_key=SBpDlgKWGAriOkfLSixVcE

サイトを安全に保つため、このリンクは1日に有効期限が切れますが、ご心配なく。有効期限後にこのエラーが再度発生した場合は、新しいリンクをお送りします。

この問題を解決するためにヘルプを求めた場合、以下の情報を尋ねられるかもしれません。
WordPress バーション6.8.3
現在のテーマ: Cocoon Child (バージョン 1.1.3)
現在のプラグイン: The Events Calendar (バージョン 6.15.7)
PHP バージョン8.3.21

エラー詳細
===============
エラータイプ E_ERROR が /home/jikka/http://jikka-katazuke.jp/public_html/wp-content/plugins/the-events-calendar/src/Tribe/Views/V2/View.php&source=gmail&ust=1760272221739000&usg=AOvVaw2Twgcw5HQuM82EcVNrPuM Y">jikka-katazuke.jp/public_html/wp-content/plugins/the-events-calendar/src/Tribe/Views/V2/View.php ファイルの 1072 行目で発生しました。 エラーメッセージ: Uncaught TypeError: Unsupported operand types: string - int in /home/jikka/http://jikka-katazuke.jp/public_html/wp-content/plugins/the-events-calendar/src/Tribe/Views/V2/View.php:1072&source=gmail&ust=1760272221739000&usg=AOvVaw0H2XOH6VYVND7hbyz3yOz 9">jikka-katazuke.jp/public_html/wp-content/plugins/the-events-calendar/src/Tribe/Views/V2/View.php:1072
Stack trace: 以下省略


この投稿は1時間前 2回ずつhomareに変更されました

   
返信引用
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 5年前
投稿: 9148
 

homareさん

とりあえず、以下の方法で、Cocoonのプレビューを止めてみてください。

Cocoon設定のプレビュー表示制御フックのサンプルコード
https://wp-cocoon.com/cocoon-setting-preview-hook/

最初の全部止めるコードで良いと思います。



   
返信引用
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 5年前
投稿: 9148
 

私のローカル環境に以下をインストール。

投稿者:: @homare

The Events Calendar (バージョン 6.15.7)

そして、有効化。

特に設定などせずに、以下のようなウィジェットを、サイドバーに設置。
(これもデフォルト状態で、特に設定はしていません)

 
すると、以下のよように再現できました。
 
「固定ページ」「本文」「目次」「エディター」「リセット」など、一部タブが上記のように表示されない状態でした。
 
エラーログを確認すると、以下のようなメッセージがありました。
PHP Fatal error:  Uncaught TypeError: Unsupported operand types: string - int in \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\View.php:1072
Stack trace:
#0 \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\View.php(1720): Tribe\Events\Views\V2\View->prev_url(true)
#1 \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\Views\Widgets\Widget_View.php(102): Tribe\Events\Views\V2\View->setup_template_vars()
#2 \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\Views\Widgets\Widget_List_View.php(67): Tribe\Events\Views\V2\Views\Widgets\Widget_View->setup_template_vars()
#3 \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\View.php(740): Tribe\Events\Views\V2\Views\Widgets\Widget_List_View->setup_template_vars()
#4 \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\Widgets\Widget_Abstract.php(134): Tribe\Events\Views\V2\View->get_html()
#5 \wp-content\plugins\the-events-calendar\common\src\Tribe\Widget\Widget_Abstract.php(307): Tribe\Events\Views\V2\Widgets\Widget_Abstract->get_html()
#6 \wp-includes\class-wp-widget.php(394): Tribe\Widget\Widget_Abstract->widget(Array, Array)
#7 \wp-includes\widgets.php(845): WP_Widget->display_callback(Array, Array)
#8 \wp-content\themes\cocoon-master\lib\utils.php(2501): dynamic_sidebar('sidebar')
#9 \wp-content\themes\cocoon-master\lib\additional-classes.php(134): is_the_page_sidebar_visible()
#10 \wp-includes\class-wp-hook.php(326): body_class_additional(Array)
#11 \wp-includes\plugin.php(205): WP_Hook->apply_filters(Array, Array)
#12 \wp-includes\post-template.php(866): apply_filters('body_class', Array, Array)
#13 \wp-includes\post-template.php(622): get_body_class(Array)
#14 \wp-content\themes\cocoon-master\lib\page-settings\single-forms.php(99): body_class()
#15 \wp-content\themes\cocoon-master\lib\page-settings\_top-page.php(351): require_once('...')
#16 \wp-content\themes\cocoon-master\lib\original-menu.php(62): require_once('...')
#17 \wp-includes\class-wp-hook.php(324): add_theme_settings_page('')
#18 \wp-includes\class-wp-hook.php(348): WP_Hook->apply_filters('', Array)
#19 \wp-includes\plugin.php(517): WP_Hook->do_action(Array)
#20 \wp-admin\admin.php(260): do_action('toplevel_page_t...')
#21 {main}
  thrown in \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\View.php on line 1072

 

プラグインで、以下のエラーが出ています。

PHP Fatal error: Uncaught TypeError: Unsupported operand types: string - int in \wp-content\plugins\the-events-calendar\src\Tribe\Views\V2\View.php:1072

「string - int」ということで、文字列と数値の演算が起きています。

この該当の1072行目は以下で。

https://plugins.trac.wordpress.org/browser/the-events-calendar/tags/6.15.7/src/Tribe/Views/V2/View.php#L1072

$paged           = $this->url->get_current_page() - 1;

ただ、「$this->url->get_current_page()」の値を確認すると、int型の「1」でした。

 

そこで、get_current_page()を確認してみましたが。

https://plugins.trac.wordpress.org/browser/the-events-calendar/tags/6.15.7/src/Tribe/Views/V2/Url.php#L132

	public function get_current_page() {
		return Arr::get_first_set( $this->get_query_args(), [ 'paged', 'page' ], 1 );
	}

ここに問題があるようで、Arr::get_first_set()が必ずしも数値を返さないケースがあるようです。
(つまり、get_current_page()が数値でなくなる)

試しに、get_current_page()を以下のように修正してみると、問題なくなりました。
(数値でない場合は、強制的に数値の1にしてみました)

public function get_current_page() {
    $page = Arr::get_first_set( $this->get_query_args(), [ 'paged', 'page' ], 1 );

    // 数値以外が入っていた場合は 1 とみなす
    return is_numeric( $page ) ? (int) $page : 1;
}

 

上記のような感じで、プラグイン側の問題かなとは思うのですけれど。
それ以上は、追っていません。

とりあえず、Cocoonのプレビューを停止すると、Cocoon設定は表示されました。
(プレビューは停止しますけれど)


この投稿は38分前ずつmk2に変更されました
この投稿は30分前ずつmk2に変更されました
この投稿は29分前ずつmk2に変更されました
この投稿は28分前ずつmk2に変更されました
この投稿は27分前ずつmk2に変更されました
この投稿は25分前ずつmk2に変更されました
この投稿は24分前ずつmk2に変更されました

   
返信引用
共有:

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

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

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

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

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

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

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

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