* No longer needed
* Remove old todos
* Use getters in admin list
* Related and upsells update for CRUD
* Fix notice in gallery
* Variable fixes and todos
* Context
* Price sync
* Revert variation attributes change
* Return parent data in view context
* Defer term counting
* wc_find_matching_product_variation
* Stock manage tweaks
* Stock fixes
* Correct id
* correct id
* Better sync
* Data logic setter fix
* feedback
If is_blog_installed() is false then skip some installation steps that
are performed on the 'init' action and which require the database to be
available
wp_get_post_terms() is a wrapper around wp_get_object_terms() which does not
use the object cache, and generates a database query every time it is used.
get_the_terms() however can use data from the object cache if present.
* Started on variation changes
* Stock functions
* Variation class
* Bulk change ->id to get_id() to fix variation form display
* Missing status
* Fix add to cart
* Start on stored data save
* save variation
* Save_variations
* Variation edit panel
* Save variations code works.
* Remove stored data code and fix save
* Improve legacy class
* wc_bool_to_string
* prepare_set_attributes
* Use wc_get_products
* More feedback fixes
* get_prop implementation in abstract and data classes
* Implement set_prop
* Change handling
* Array key exists
* set_object_read
* Started on variation changes
* Stock functions
* Variation class
* Bulk change ->id to get_id() to fix variation form display
* Missing status
* Fix add to cart
* Start on stored data save
* save variation
* Save_variations
* Variation edit panel
* Save variations code works.
* Remove stored data code and fix save
* Improve legacy class
* wc_bool_to_string
* prepare_set_attributes
* Use wc_get_products
* More feedback fixes
* Feedback fixes
* Fixed downlodable permissions while updating orders.
- Fixed undefined $wpdb fatal error
- Fixed how to update permissions when updated the billing_email
cc @mikejolley
* Use order CRUD to update admin order data
* Updated WC_Meta_Box_Order_Data::save() params and updated docblocks
* Missing period
* Handle cache and status on CRUD side
* Initial props
* Work on admin saving
* Set/get attributes
* Atom was moaning about this before but no longer.
* Update get_shipping_class
* WC_Product_Attribute
* Use getter in admin panel
* Fix attribute saving
* Move settings into new files
* Refactor panels and use getters
* Use getters for variation panel
* Revert save variation changes for now
* Add todos
* Fix downloads
* i18n: simpler translation strings
* i18n: simpler translation strings
* i18n: readble printf(), and moving the %s placeholder to `%s product`
* i18n: make string translatable and remove the HTML tags
* i18n: avoide using HTML tags in translatino strings
* i18n: move the colon into the translation string and use %s placeholder for the IP
* i18n: use sprintf() on field-validation translation strings, and unify those strings
* i18n: move colons into the translation strings
* i18n: use `%s` placeholder as the site name in "Powered by WooCommerce" string
* i18n: use `%s` placeholder for min and max price
* i18n: rewrite the translation strings printf()
* Fix test error
* Initial props
* Work on admin saving
* Set/get attributes
* Atom was moaning about this before but no longer.
* Update get_shipping_class
* WC_Product_Attribute
* Use getter in admin panel
* Fix attribute saving
* Spacing
* Fix comment
* wc_implode_text_attributes helper function
* i18n: simpler translation strings
* i18n: simpler translation strings
* i18n: readble printf(), and moving the %s placeholder to `%s product`
* i18n: make string translatable and remove the HTML tags
* i18n: avoide using HTML tags in translatino strings
* i18n: move the colon into the translation string and use %s placeholder for the IP
* i18n: use sprintf() on field-validation translation strings, and unify those strings
* i18n: move colons into the translation strings
* i18n: use `%s` placeholder as the site name in "Powered by WooCommerce" string
* i18n: use `%s` placeholder for min and max price
* i18n: rewrite the translation strings printf()
* i18n: simpler translation strings
* i18n: simpler translation strings
* i18n: readble printf(), and moving the %s placeholder to `%s product`
* i18n: make string translatable and remove the HTML tags
* i18n: avoide using HTML tags in translatino strings
* RTL+i18n: product title stricture as translation string to allow RTL languages to change `→` TO `←`
* i18n: move the `→` into the translation string to allow RTL languages to translate to `←`
* RTL: product filter indent using `→` and `←` chars
* a11y: remove `←` char, it's a bad accessibility practice to use visual indicators to point to menus
* a11y: remove `←` char, it's a bad accessibility practice to use visual indicators to point to menus
* i18n: Remove some HTML tags from translation strings
* i18n: simpler translation string
* i18n: translations strings with surrounding `<strong>` HTML tags should be moved outside the translation string
* i18n: Avoide using `<code>' HTML tags in translation strings
* i18n: Split the notice to avoide using HTML tags in translation strings
* use %s in translations strings
* merge simmilar error strings
* i18n: use sprintf() in translation strings to make them easier to understand for translators
* i18n: remove sprintf() function from translation string with unused parameter
* i18n: move colons and brackets into the translation strings
* revert comit addaa5d
* Fix broken sprintf()
* i18n: move colons into the translation strings on error messages
* Fix Travis-CI Error: operator must be surrounded by a single space
* Replace some context function with translation comments
* Remove two more context function
* Replace another context function with translation comments