We intend to use the same namespacing algorithm for HPOS orders cache like we have been using before for posts. Moving this structure to a common trait allow us to use the same logic for both posts and HPOS.
* Disable the new navigation.
* Add changelog
* Fix linter errors.
* Disable the new_navigation option.'
* Navigation: disable the opt-out modal.
* Disable navigation for sites that have it turned off. Revert obsolete changes.
* Navigation: Add warning before disabling the navigation
in the Feature Settings.
* Linter errors.
* Correct the logic.
* Edit the notice text.
* Fixing linting errors."
* Tests: fix the copy.
* Always show comments for product feedback form
* Add changelog entry
* Add CES changelog entry
* Fix up lint errors
* Add default for shouldShowComments in CustomerFeedbackModal
* Enable new experience for simple products
* Add changelog
* Fix `updateOptions`
* Fix redirect when new-exp is enabled
* Redirect when new-exp is enabled
Co-authored-by: Fernando Marichal <contacto@fernandomarichal.com>
* Migrate shipping shipping in product editor to slot fill
* Adding changelog
* Removing obsolete shipping section files, adding support to variations form
* Multichannel Marketing - Core Library (#35099)
* Create channel interface and campaign value class
* Create MarketingChannels class
* Register MarketingChannels class in DI container
* Use the new MarketingChannels class to get the installed marketing extensions' data
* Use DI container to access InstalledExtensions class
* Add InstalledExtensions to the $provides array
* Hint that campaign cost should also indicate the currency
* Initialize the channels array
* Add unit tests for MarketingCampaign
* Add unit tests for MarketingChannels
* Add Price class to represent a price with currency
* Use Price class for marketing campaign's cost
* Define a constant to indicate the MCM classes exist
This constant will be checked by third-party extensions before utilizing any of the classes/interfaces defined for this feature.
* Create MarketingSpecs class to include WC.com API calls
* Remove WC.com API calls from Marketing class
And replace them with calls from MarketingSpecs class.
* Use the const from MarketingSpecs
* Fix MarketingChannels unit tests
* Add missing settings URL to the channel data
Co-authored-by: Nima <nima.karimi@automattic.com>
* Multichannel Marketing - Changes to the marketing classes (#36012)
* Rename `get_errors_no` to `get_errors_count`
* Remove the validation for marketing channel slugs
Do not check if the marketing channel's slug exists in the list returned by WooCommerce.com Recommendation API. This allows any third-party extension to register as a marketing channel.
* Revert InstalledExtensions
The InstalledExtensions class will be used by the previous generation of the Marketing dashboard (if the user has not enabled the new "Marketing" feature); therefore, it's best to restore it to the original code.
* Fix code style
* Translate Exception message
* Remove doc references to a predetermined list of marketing channels
Co-authored-by: Nima <nima.karimi@automattic.com>
* Multichannel Marketing - API (#36222)
* Rename `get_errors_no` to `get_errors_count`
* Remove the validation for marketing channel slugs
Do not check if the marketing channel's slug exists in the list returned by WooCommerce.com Recommendation API. This essentially allows any third-party extension to register as a marketing channel.
* Revert InstalledExtensions
The InstalledExtensions class will be used by the previous generation of Marketing dashboard (if the user has not enabled the new "Marketing" feature); therefore, it's best to restore it to the original code.
* Fix code style
* Add channel property to MarketingCampaign
* Add methods to filter the recommended marketing channels and extensions
* Add `marketing/recommendations` API
* Add unit tests for `marketing/recommendations` API
* Add `marketing/channels` API
* Add unit tests for `marketing/channels` API
* Add `marketing/campaigns` API
* Add unit tests for `marketing/campaigns` API
* Translate Exception message
* Remove doc references to predetermined list of marketing channels
* Add `unregister_all` method
To allow unregistering all marketing channels.
* Unregister all channels on test tear down
* Change API access denied authorization code
* Change API access permission
* Add MarketingCampaignType class
This allows defining campaign types for each marketing channel.
* Add campaign type property to campaign class
* Add `marketing/campaign-types` API
This API returns the aggregated list of supported marketing campaign types for all registered marketing channels.
* Add unit tests for `marketing/campaign-types` API
* Remove unused jsonSerialize method
* Fix unit tests
Co-authored-by: Nima <nima.karimi@automattic.com>
* Add changelog
* Add product listing status sync failed
Co-authored-by: Nima <nima.karimi@automattic.com>
* Add permalink_template and generated_slug to posts REST API
* Changelog
* Add missing domain for translations
* Use strict comparison for in_array
* Fix code style (alignment) issue
* Update number of expected properties in products schema
* Add an admin notice about the upcoming change in PHP requirements
The minimum required PHP version will be 7.3 as of WooCommerce 7.7.
This adds a dismissable admin notice to PHP 7.2 users.
* Add changelog file
* Disable PHPCS warnings for TODO items (required by GitHub CI)
* Reformat the PHP 7.3 requirement notice to be more translators-friendly
* Add a translators note to pass linting
Co-authored-by: Corey McKrill <916023+coreymckrill@users.noreply.github.com>
* Apply filter to get additional sql to include variations with no orders
* Add join only when correct option is selected
* Some more desperate tests
* Analytics: use a sepoarate query for data without orders.
* Change 'experimental_woocommerce_analytics_variations_additional_clause' filter to apply sql clauses directly
* Cleanup
* Add changelog
* Fix PHPCS issues
* Add docblock and update the filter name
* Improve docblock of new filter
* Add Since 7.4.0 on filter
* Move union statement before order by statement
* Apply filters before running the db count statement and add sql select clause before
* Remove with sql clause since it's not compatible with MySQL 5.7
* Remove additional spaces
* Fix bug caught by unit test in which $variations_query is overwritten because the assignment was outside the 'else' statement
Co-authored-by: AnnaMag <anna.mag.kedzierska@gmail.com>
* Add initial component to auto load fills from API config
* Add changelog
* Update logic to make use of new store and re-usable components
* Add changelog
* Add loading state for product form data to add/edit product pages
use the WooCommerce error log, change the quotation style, and fix a small linting issue (whitespace)
Co-authored-by: Barry Hughes <3594411+barryhughes@users.noreply.github.com>