Используйте категории продуктов Woocommerce, даже если Woocommerce не установлен
У меня есть собственный плагин, который при активации будет создавать категории продуктов WooCommerce. Я использую этот код здесь, чтобы добавить категорию продукта.
$category = array(
'taxonomy' => 'product_cat',
'cat_name' => 'Stimulants GROUP 1 (MPH Short acting, IR)',
);
wp_insert_category( $category );
Я попытался активировать свой пользовательский плагин без установленного WooCommerce, и он не работает. Это не будет действительно работать? Если нет, есть ли другой способ сделать это?
2 ответа
НЕТ, это не будет работать так просто...
Важное примечание:
Категория продуктов Woocommerce - это пользовательская таксономия'product_cat'
это будет работать только с пользовательским типом сообщений Woocommerce "product", но не для других сообщений...
WordPress wp_insert_category()
не будет работать с любой пользовательской таксономией. Эта функция используется для категорий Wordpress…
Для категории продуктов WooCommerce вы должны будете использовать wp_insert_term()
вместо этого так:
wp_insert_term( 'Stimulants GROUP 1 (MPH Short acting, IR)', 'product_cat' );
Если ваш пользовательский плагин был создан для Woocommerce, вам необходимо включить Woocommerce. Не забывайте, что товарная категория работает исключительно с типом поста "товар".
Вы также можете создать свою собственную таксономию
'product_cat'
например, с помощью этого учебника... Но если ваш пользовательский плагин нуждается в Woocommerce, он ничего не решит.
Отвечая на ваш комментарий: Предотвратить активацию плагина, если WooCommerce не активен?
Ваш основной файл плагина должен начинаться с:
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
// Check if WooCommerce is active
if ( ! in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) exit; // Exit if WC not active
Или вы можете проверить эту тему: Как проверить, активен ли плагин (WooCommerce)?
Таможенная таксономия product_cat
это не то, что принадлежит WooCommerce. Любой плагин может создавать и использовать определенную категорию в WordPress.
Итак wp_insert_category
Код функции, который вы написали, создаст эту таксономию.
Чтобы проверить, почему это не работает, вам нужно включить режим отладки, установив WP_DEBUG
константа, чтобы быть правдой. Просмотрите журналы, и вы сможете отследить истинную причину.