{"id":363629,"date":"2026-09-07T15:45:47","date_gmt":"2026-09-07T15:45:47","guid":{"rendered":"https:\/\/ar.wordpress.org\/plugins\/gaty-add-product-brands\/"},"modified":"2026-09-07T15:45:32","modified_gmt":"2026-09-07T15:45:32","slug":"gaty-add-product-brands","status":"publish","type":"plugin","link":"https:\/\/ca.wordpress.org\/plugins\/gaty-add-product-brands\/","author":23537171,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.7.0","stable_tag":"1.7.0","tested":"7.1","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"Gaty Add Product Brands","header_author":"Gaty","header_description":"Create and manage WooCommerce products faster with per-color data, bulk CSV import, quick product editing, cascading categories, brands, colors, and sizes.","assets_banners_color":"2a1741","last_updated":"2026-09-07 15:45:32","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":65,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.7.0":{"tag":"1.7.0","author":"gatytech","date":"2026-09-07 15:45:32","revision":3685226}},"upgrade_notice":{"1.4.0":"<p>Adds the optional CSV bulk importer. Existing WooCommerce catalog data is preserved.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3685335,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3685335,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3685335,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3685335,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.7.0"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[14164,21157,702,6602,286],"plugin_category":[45],"plugin_contributors":[],"plugin_business_model":[],"class_list":["post-363629","plugin","type-plugin","status-publish","hentry","plugin_tags-brands","plugin_tags-csv-import","plugin_tags-products","plugin_tags-variations","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_committers-gatytech"],"banners":{"banner":"https:\/\/ps.w.org\/gaty-add-product-brands\/assets\/banner-772x250.png?rev=3685335","banner_2x":"https:\/\/ps.w.org\/gaty-add-product-brands\/assets\/banner-1544x500.png?rev=3685335","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/gaty-add-product-brands\/assets\/icon-128x128.png?rev=3685335","icon_2x":"https:\/\/ps.w.org\/gaty-add-product-brands\/assets\/icon-256x256.png?rev=3685335","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Gaty Add Product Brands provides a streamlined WooCommerce admin workflow for creating variable products and managing reusable catalog data.<\/p>\n\n<p>The plugin uses WooCommerce product data and taxonomies rather than a separate product database. Product categories use the native <code>product_cat<\/code> taxonomy, WooCommerce Product Brands use <code>product_brand<\/code> when available, colors use the global <code>pa_color<\/code> attribute, and sizes use the global <code>pa_size<\/code> attribute.<\/p>\n\n<p>Main features:<\/p>\n\n<ul>\n<li>Create a variable product from one admin screen.<\/li>\n<li>Quickly edit product final category, brand, regular price, and sale price from a lazy-loaded AJAX products table.<\/li>\n<li>Search by product name or SKU and filter the quick editor by category or brand.<\/li>\n<li>Load heavy edit controls only on demand, then save one open editor or all changed open editors over AJAX; variable-product price edits are applied to variations and synchronized.<\/li>\n<li>Add multiple colors, each with its own SKU\/serial, regular price, sale price, and variation image.<\/li>\n<li>Optionally select sizes and automatically create color x size variations.<\/li>\n<li>Select product categories with cascading parent\/child dropdowns.<\/li>\n<li>Add a new root category or select an existing parent path before adding a child category.<\/li>\n<li>Use WooCommerce core Product Brands as the preferred brand taxonomy.<\/li>\n<li>Synchronize a brand with supported product-brand taxonomies detected on the site.<\/li>\n<li>Manage reusable colors with a HEX color picker and visual preview.<\/li>\n<li>Add many colors at once using name + HEX rows or a pasted <code>Color | #HEX<\/code> list.<\/li>\n<li>Manage reusable sizes using WooCommerce global attributes.<\/li>\n<li>Set a featured image, product gallery, stock quantity, and publish status.<\/li>\n<li>Uses WooCommerce CRUD product classes for product and variation creation.<\/li>\n<li>Bulk-import products from CSV, grouping rows with the same parent code into one variable product.<\/li>\n<li>Preview imports before running them, then process products in small AJAX batches.<\/li>\n<li>Match CSV category names\/paths to existing WooCommerce categories; create\/synchronize brands, colors, swatches, and sizes during bulk import.<\/li>\n<li>Import per-color SKU, regular price, sale price, image URL, and stock quantity.<\/li>\n<\/ul>\n\n<p>The plugin does not send store or user data to external services and does not load remote scripts or styles. During a bulk import, it can make an outbound HTTP\/HTTPS request only to image URLs explicitly supplied by an administrator so those images can be copied into the WordPress Media Library.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate WooCommerce.<\/li>\n<li>Upload the Gaty Add Product Brands ZIP from Plugins &gt; Add New &gt; Upload Plugin.<\/li>\n<li>Activate Gaty Add Product Brands.<\/li>\n<li>Open Gaty Add Product Brands in the WordPress admin menu.<\/li>\n<li>Add or review colors, sizes, categories, and brands, then open Add Product.<\/li>\n<li>For bulk uploads, open Bulk Import and download the provided CSV template.<\/li>\n<\/ol>\n\n<p>On activation, the plugin creates the global WooCommerce attributes <code>color<\/code> and <code>size<\/code> only when they do not already exist. Existing attributes are reused.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20the%20plugin%20create%20a%20separate%20category%20system%3F\"><h3>Does the plugin create a separate category system?<\/h3><\/dt>\n<dd><p>No. Categories are stored in WooCommerce's native <code>product_cat<\/code> taxonomy.<\/p><\/dd>\n<dt id=\"which%20brand%20taxonomy%20is%20used%3F\"><h3>Which brand taxonomy is used?<\/h3><\/dt>\n<dd><p>WooCommerce core <code>product_brand<\/code> is preferred when available. The plugin can also detect supported product brand taxonomies and synchronize matching brand terms and product assignments. Site owners can customize the detected taxonomies with the <code>gaty_apb_brand_taxonomies<\/code> filter.<\/p><\/dd>\n<dt id=\"where%20are%20colors%20and%20sizes%20stored%3F\"><h3>Where are colors and sizes stored?<\/h3><\/dt>\n<dd><p>Colors are stored in the global <code>pa_color<\/code> attribute and sizes in <code>pa_size<\/code>. Color HEX values are synchronized with WooCommerce visual attribute term data (<code>color<\/code>) while retaining the plugin's compatibility meta (<code>_gaty_apb_color_hex<\/code>). When WooCommerce exposes the visual attribute type, <code>pa_color<\/code> is upgraded to <code>wc-visual<\/code> so native swatches can render the saved color.<\/p><\/dd>\n<dt id=\"how%20does%20bulk%20import%20know%20that%20seven%20rows%20are%20one%20product%3F\"><h3>How does bulk import know that seven rows are one product?<\/h3><\/dt>\n<dd><p>Rows with the same <code>parent_code<\/code> are grouped into one WooCommerce variable product. For convenience, following color rows may leave <code>parent_code<\/code> blank and inherit the previous product code. Each row becomes one color variation (or color x size variations when sizes are supplied). The parent code is stored on the created product so importing the same code again is skipped instead of duplicated.<\/p><\/dd>\n<dt id=\"can%20bulk%20import%20create%20missing%20catalog%20data%3F\"><h3>Can bulk import create missing catalog data?<\/h3><\/dt>\n<dd><p>The importer matches the CSV category name\/path to an existing WooCommerce product category and will not create a new category automatically. It can synchronize a brand, create color and size terms, save WooCommerce visual color data, and download a variation image from a public HTTP\/HTTPS URL.<\/p><\/dd>\n<dt id=\"does%20uninstalling%20the%20plugin%20delete%20products%2C%20categories%2C%20brands%2C%20colors%2C%20or%20sizes%3F\"><h3>Does uninstalling the plugin delete products, categories, brands, colors, or sizes?<\/h3><\/dt>\n<dd><p>No. The plugin intentionally leaves catalog data in WooCommerce so products and taxonomy terms are not lost when the plugin is removed.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20send%20any%20data%20to%20external%20services%3F\"><h3>Does the plugin send any data to external services?<\/h3><\/dt>\n<dd><p>No. The plugin has no tracking, telemetry, advertising, or external API calls.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.7.0<\/h4>\n\n<ul>\n<li>Rebuilt Quick Product Manager as a lazy AJAX editor to reduce initial database and PHP load.<\/li>\n<li>Initial table no longer loads variation prices or repeated category\/brand select options for every product.<\/li>\n<li>Category\/brand edit options are fetched once on first edit and cached in the browser for the page session.<\/li>\n<li>Product details are fetched only for the row being edited; saves use AJAX without a full page reload.<\/li>\n<li>Default page size reduced to 10 products, with 10\/20\/50 options.<\/li>\n<li>Added sequential save for multiple open changed editors to avoid server spikes.<\/li>\n<\/ul>\n\n<h4>1.6.2<\/h4>\n\n<ul>\n<li>Bulk import now matches CSV category names to existing WooCommerce product categories and never auto-creates a new category from the CSV.<\/li>\n<li>Existing imported products are moved to the matched category when re-imported with the same parent code.<\/li>\n<li>Rebuilt Quick Product Manager rendering to use resilient raw WordPress\/WooCommerce data so a problematic product cannot crash the whole table.<\/li>\n<li>Added safer variable-price display and row-level error isolation.<\/li>\n<\/ul>\n\n<h4>1.6.1<\/h4>\n\n<ul>\n<li>Added a Quick Product Manager table for editing final category, brand, regular price, and sale price.<\/li>\n<li>Added product-name\/SKU search plus category and brand filters.<\/li>\n<li>Added per-row save and bulk save for changed products.<\/li>\n<li>Variable-product price edits are applied to all child variations and synchronized back to the parent.<\/li>\n<\/ul>\n\n<h4>1.5.3<\/h4>\n\n<ul>\n<li>Fixed compatibility with third-party color swatch term-meta formats including <code>product_attribute_color<\/code>.<\/li>\n<li>Preserves installed swatch plugins' custom <code>color<\/code> attribute type instead of forcing <code>wc-visual<\/code>.<\/li>\n<li>Reworked CSV decoding to normalize full files to UTF-8, including Arabic Windows\/CP1256 and UTF-16 exports.<\/li>\n<li>Blocks obvious <code>????<\/code> text corruption and can repair previously corrupted product text when re-importing the same parent code.<\/li>\n<\/ul>\n\n<h4>1.5.2<\/h4>\n\n<ul>\n<li>Fixed CSV import fatal error on servers whose mbstring build does not support Windows-1256 detection.<\/li>\n<li>Added safe Arabic CSV conversion using UTF-8 validation and iconv\/CP1256 fallbacks.<\/li>\n<\/ul>\n\n<h4>1.5.1<\/h4>\n\n<ul>\n<li>Hardened bulk-import runtime error handling and removed dependency on WooCommerce internal swatch classes.<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>Added bulk color creation, fast paste input, swatch preview, duplicate protection, and WooCommerce swatch synchronization.<\/li>\n<\/ul>\n\n<h4>1.4.0<\/h4>\n\n<ul>\n<li>Added CSV bulk product import with parent-code grouping.<\/li>\n<li>Added import preview and batched AJAX processing.<\/li>\n<li>Added automatic category-path, brand, color, swatch, and size creation during import.<\/li>\n<li>Added per-color image URL, SKU, pricing, and stock support.<\/li>\n<li>Added duplicate-parent-code protection and a downloadable CSV template.<\/li>\n<\/ul>\n\n<h4>1.3.1<\/h4>\n\n<ul>\n<li>Fixed empty frontend color swatches for colors created in Gaty.<\/li>\n<li>Synchronizes HEX colors with WooCommerce native visual term meta.<\/li>\n<li>Automatically migrates existing Gaty color HEX values to WooCommerce visual color data.<\/li>\n<li>Upgrades the global color attribute to <code>wc-visual<\/code> when that WooCommerce feature is available.<\/li>\n<\/ul>\n\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>Prepared the plugin metadata and documentation for WordPress.org submission.<\/li>\n<li>Added GPL license metadata and removed the placeholder Plugin URI.<\/li>\n<li>Added WordPress and WooCommerce compatibility metadata.<\/li>\n<li>Improved output escaping in admin screens.<\/li>\n<li>Added complete WordPress.org readme documentation and privacy\/data-retention notes.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Added root\/child category creation with a cascading parent selector.<\/li>\n<li>Added a hierarchical category tree preview.<\/li>\n<li>Added brand compatibility and synchronization for supported product brand taxonomies.<\/li>\n<li>Synchronizes selected brand assignments across detected brand taxonomies.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Redesigned the quick product screen.<\/li>\n<li>Added per-color SKU, regular price, sale price, and variation image.<\/li>\n<li>Added cascading native WooCommerce category selection.<\/li>\n<li>Added color x size variation generation using each color's data.<\/li>\n<\/ul>","raw_excerpt":"Create and manage WooCommerce products faster with quick editing, per-color data, cascading categories, brands, colors, sizes, and CSV import.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/363629","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=363629"}],"author":[{"embeddable":true,"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/gatytech"}],"wp:attachment":[{"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=363629"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=363629"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=363629"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=363629"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=363629"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/ca.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=363629"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}