Kitgenix Custom Tabs for WooCommerce
Kitgenix Custom Tabs for WooCommerce lets you add product-specific custom tabs from the WooCommerce product editor, reuse saved tab templates, and duplicate existing tabs when products only need small content variations.
Designed to be lightweight and modular: — Add tabs per product (title, optional nickname, optional slug, optional priority/position, rich content) — Add global tabs that apply to every product (optional) — Optional shortcode processing for tab content — Safety limits to keep the product editor fast (max tabs per product) — Optional setting to hide the tab heading inside the tab content panel
Features
- Modal-based tab editor powered by Quill rich-text editing with inline validation.
- Saved tab templates for reusable snippets like sizing guides, warranties, ingredient lists, and care instructions.
- Fast duplication for product tabs and global tabs so merchants can clone and tweak existing content instead of rewriting it.
- Automatic slug generation from the tab title, with optional manual slug control when you need stable identifiers.
- Product-specific tabs plus store-wide global tabs managed from a dedicated Global Tabs screen.
- Templates can be inserted directly into the product editor and the Global Tabs screen without leaving the current workflow.
- Flexible placement controls using a default position preset plus priority base/step settings for tab ordering.
- Optional shortcode rendering inside tab content.
- Optional hidden tab headings when you want the title to appear only on the tab label itself.
- Cached usage stats in the Support tab so large stores can see how many products and tabs are in use without expensive queries.
- HPOS compatibility declaration for modern WooCommerce installs.
Quick Start
- Install and activate the plugin (WooCommerce required).
- Go to Kitgenix → Custom Tabs to configure settings.
- Edit a product: Products → Edit → Product data → Custom Tabs.
- Add one or more tabs, then Update the product.
Optional: add store-wide tabs under Kitgenix → Custom Tabs → Global Tabs. Optional: save reusable snippets under Kitgenix → Custom Tabs → Templates, then insert them into products or global tabs in one click. Optional: use the settings screen to control maximum tabs, default tab positions, shortcode support, and heading visibility.
Developers
Text domain:
— kitgenix-custom-tabs-for-woocommerce
Settings option:
— kitgenix_custom_tabs_for_woocommerce_settings
Settings group (Settings API):
— kitgenix_custom_tabs_for_woocommerce_settings_group
Settings keys (stored inside the option array):
— enabled (bool/int)
— max_tabs (int)
— allow_shortcodes (bool/int)
— priority_base (int)
— priority_step (int)
— hide_tab_heading (bool/int)
— tab_templates (array of reusable tab rows)
— global_tabs (array of tab rows)
Sanitization behavior: — The sanitize callback merges submitted values into the existing option, so saving one settings tab/form does not wipe values from other tabs.
Post meta:
— kitgenix_custom_tabs_for_woocommerce_tabs (array)
Transients:
— kitgenix_custom_tabs_for_woocommerce_do_activation_redirect (short-lived activation redirect flag)
— kitgenix_custom_tabs_for_woocommerce_usage_stats (cached support-tab usage totals)
— kitgenix_hub_wporg_active_installs_v1 (Kitgenix hub cache; active install counts)
— kitgenix_hub_wporg_ratings_v1 (Kitgenix hub cache; ratings percentage)
— kitgenix_hub_wporg_media_v1 (Kitgenix hub cache; banners/icons)
Nonces (exact identifiers):
— Product save nonce field: kitgenix_custom_tabs_for_woocommerce_tabs_nonce
— Product save nonce action: kitgenix_custom_tabs_for_woocommerce_tabs_save
— Settings form nonce field: kitgenix_custom_tabs_for_woocommerce_settings_nonce
— Settings form nonce action: kitgenix_custom_tabs_for_woocommerce_settings_save
Hooks used:
— plugins_loaded (action): bootstrap plugin when WooCommerce is available
— init (action): load translations
— admin_init (action): register settings; perform activation redirect once
— admin_menu (action): ensure shared Kitgenix hub menu; register plugin submenu page
— admin_head (action): inject shared Kitgenix hub admin menu icon CSS
— admin_enqueue_scripts (action): enqueue hub/admin/product editor assets
— plugin_action_links_{plugin_basename} (filter): add “Settings” link on Plugins screen
— before_woocommerce_init (action): declare WooCommerce HPOS compatibility
— woocommerce_product_tabs (filter): inject frontend tabs
— woocommerce_product_data_tabs (filter): add Product data tab
— woocommerce_product_data_panels (action): render Product data panel
— woocommerce_process_product_meta (action): save product tab meta
External Services
This plugin can connect to the WordPress.org Plugins API when you view the shared Kitgenix admin hub page.
It uses WordPress core’s plugins_api() to fetch plugin information (such as active install counts and ratings) for Kitgenix plugins, and caches results in transients.
No customer/order/product data is sent.
Security & Privacy
- Admin actions are protected with capability checks.
- Product tab saving is protected with a plugin nonce.
- Settings are saved via WordPress’ Settings API (options.php), which is nonce-protected by WordPress core.
- Tab content is output with WordPress formatting and safe HTML handling.
Uninstall
On uninstall, the plugin removes: — The settings option — All saved product tab meta entries
Note: the uninstall handler does not explicitly delete short-lived transients or hub cache transients.
Support Development
If this plugin saves you time, you can support development here: https://buymeacoffee.com/kitgenix
Credits
Built with ❤︎ by @kitgenix — https://kitgenix.com
