Перво-наперво: это мой первый вопрос, размещенный на stackoverflow. Иными словами, это первая проблема, которую я не смог решить самостоятельно с вашей помощью (огромное спасибо всем вам, вы делаете мир go кругом!).
Мой вопрос связан с ответом заданный @ LoictheAzte c на другой вопрос (изначально я планировал опубликовать свой вопрос в комментариях к этому посту, но, поскольку я скрываюсь от меня, мне не хватает репутации, чтобы это сделать): { ссылка }
Я создал переменный продукт и хотел бы программно добавить новые значения атрибутов в этот продукт.
Я скопировал и немного изменил код по ссылке выше, но когда я попытался выполнить его, я получил следующие ошибки:
Notice: wc_get_product was called incorrectly. wc_get_product should not be called before the woocommerce_init, woocommerce_after_register_taxonomy and woocommerce_after_register_post_type actions have finished. Backtrace: require_once('wp-load.php'), require_once('wp-config.php'), require_once('wp-settings.php'), do_action('plugins_loaded'), WP_Hook->do_action, WP_Hook->apply_filters, execute_active_snippets, execute_snippet, eval, create_product_variation, wc_get_product, wc_doing_it_wrong
Fatal error: Uncaught Error: Call to a member function get_name() on boolean
Проблема, как правило, заключается в следующей строке кода в размещенной выше ссылке:
'post_title' => $product->get_name()
В качестве напоминания и по соображениям удобства переменная продукта определяется следующим образом:
$product = wc_get_product($product_id)
Значения атрибута правильно добавляются в переменный продукт, поэтому код выполняет то, что я ожидал и намеревался сделать, но сайт все еще падает.
Насколько я понимаю ситуацию, возникающие проблемы (и их причины) могут быть связаны с:
- Изменения, которые я сделал в коде (уже проверено с кодом по умолчанию и примером, приведенным @ LoictheAzte c в его посте, та же проблема)
- Как всегда, проблемы совместимости с плагинами и / или тема (уже проверена, деактивированы все остальные плагины и изменена на тему по умолчанию; также пробовал код с установкой fre sh WP)
- В соответствии с ответом, данным кому-то, имеющему аналогичную проблему (https://github.com/woocommerce/woocommerce/issues/23160), проблема также может быть вызвана тем, что переменная $ product неправильно «связана с действительным продуктом» (не уверены в этот, но я думаю, что «родительский» переменный продукт уже создан, это хорошо) или «продукт больше не существует» (может определенно исключить этот).
Любая помощь, как бы высоко ценится.