Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Customizer controls script throws when WooCommerce is inactive and an Elementor shop template exists (woocommerce_product_catalog section missing)

オープン
#4,653 コメント 3 件 リアクション 0 件 担当者 1 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@girishpanchal30 がすでに取り組んでいます。

2026年10月13日 から。

  • #4654 @girishpanchal30 による — マージ済み
  • #4656 @pirate-bot による — オープン

評価

この issue はまだ評価されていません。

説明

bug-report bug-report-triage customer report

Summary

With WooCommerce deactivated and a leftover Elementor shop (product archive) template on the site, the Customizer, including the Header Builder, fails to finish loading and stays stuck.

Expected: the Customizer loads normally; the Elementor-template warning is only attempted when the WooCommerce section exists.
Actual: a script error stops initialization.
Impact: the Header Builder and Customizer are unusable on affected sites until WooCommerce is re-enabled or the template is removed.

Customer context

  • Product / area: Neve (Pro) Customizer / Header Builder
  • Version: Not provided
  • Environment: WooCommerce disabled; Elementor shop template remains
  • Reported symptom: Customizer/Header Builder stuck loading
  • Impact: Customizer unusable on that site

Reproduction notes

Inferred steps: 1) Create an Elementor product archive template. 2) Deactivate WooCommerce. 3) Open the Customizer. Expected: the script error appears and the UI hangs. Not reproduced at runtime.

Diagnosis

Conclusion

The code path appears to call .notifications on the result of wp.customize.section('woocommerce_product_catalog') without checking that the section exists. That section is registered by WooCommerce, so with WooCommerce off the result is likely undefined and the call would throw. This is inferred from source, not runtime-verified.

Where this likely occurs
  • assets/apps/customizer-controls/src/controls.js — checkHasElementorTemplates() approx. lines 317–345, on the woocommerce_product_catalog and neve_single_product_layout sections; it is called approx. line 406.
  • inc/compatibility/woocommerce.php — add_customizer_options() approx. lines 145–149, which sets hasElementorShopTemplate and hasElementorProductTemplate via Elementor::has_template().
Engineering notes

The elementor flags are set in the WooCommerce compat class. Worth checking whether that class loads when WooCommerce is inactive, and whether the flag is true in that state. A leftover template post is apparently enough to trigger the branch. The product-template block just below uses the same pattern for neve_single_product_layout.

Test coverage status

No relevant coverage was found during inspection.

What to verify or explore next

May be worth verifying the reproduction with WooCommerce off plus an Elementor product_archive template, and checking the browser console for a TypeError.

Unknowns / follow-up

The affected Neve version is unknown. Whether the flag is populated with WooCommerce off was not confirmed.

Confidence

Confidence: 80/100

Source shows the Customizer script dereferences a WooCommerce section without a null check, matching the customer's diagnosis. Not runtime-reproduced.


Source: HelpScout #3480859978
Generated by bug-report-triage (ID: bug-report-triage_6acd668c519742.22923583)

主要言語
PHP
スター
307
フォーク
88
平均マージ
2日 21時間
マージ済み PR(30日)
15

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

Codeinwp/neve のほかの issue

Codeinwp/neve の issue をすべて見る

似ている issue

PHP の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。