=== WooCommerce === Contributors: automattic, mikejolley, jameskoster, claudiosanches, claudiulodro, kloon, rodrigosprimo, jshreve, coderkevin Tags: ecommerce, e-commerce, store, sales, sell, shop, cart, checkout, downloadable, downloads, paypal, storefront, woo commerce Requires at least: 4.7 Tested up to: 5.1 Stable tag: 3.5.0 License: GPLv3 License URI: https://www.gnu.org/licenses/gpl-3.0.html WooCommerce is a powerful, extendable eCommerce plugin that helps you sell anything. Beautifully. == Description == WooCommerce is a free eCommerce plugin that allows you to sell anything, beautifully. Built to integrate seamlessly with WordPress, WooCommerce is the world’s favorite eCommerce solution that gives both store owners and developers complete control. With endless flexibility and access to hundreds of free and premium WordPress extensions, WooCommerce now powers 30% of all online stores — more than any other platform. [youtube https://www.youtube.com/watch?v=1KahlicghaE] = Sell anything, anywhere = With WooCommerce, you can sell both physical and digital goods in all shapes and sizes, offer product variations, multiple configurations, and instant downloads to shoppers, and even sell affiliate goods from online marketplaces. With premium extensions, you can offer bookings, memberships, and recurring subscriptions. Perhaps you’d like to sell monthly subscriptions for physical goods, or offer your members a discount on digital downloads? It’s all possible. = Ship wherever you like = Offer free shipping, flat rate shipping, or make real-time calculations. Limit your shipments to specific countries, or open your store up to the world. Shipping is highly configurable, and WooCommerce even supports drop shipping. = Extensive payment options = WooCommerce comes bundled with the ability to accept major credit cards, PayPal, BACS (bank transfers), and cash on delivery. Need additional options? More than 140 region-specific gateways integrate with WooCommerce, including popular choices like Stripe, Authorize.Net, and Amazon Payments. = You control it all — forever = WooCommerce gives you complete control of your store, from taxes to stock levels to customer accounts. Add and remove extensions, change your design, and switch settings as you please. It’s all under your control. One of the biggest risks of using a hosted eCommerce platform is what happens to your store if the provider closes up shop. With WooCommerce, you have complete control, so there’s never any reason to worry. Your data belongs to you — and it’s kept secure, thanks to regular audits by industry leaders. = Define your style with Storefront = [Storefront](https://woocommerce.com/storefront/) is a free WordPress theme available to any WooCommerce store. Along with deep WooCommerce integration, Storefront prioritizes speed and uptime while eliminating theme and plugin conflicts during major updates. Define your style even further by customizing Storefront to your liking or choosing from one of our several [Storefront child themes](https://woocommerce.com/product-category/themes/storefront-child-theme-themes/). It’s all up to you, and all open source. = Built with developers in mind = Extendable, adaptable, and open source — WooCommerce was created with developers in mind. With its strong, robust framework, you can scale your client’s store all the way from basic to high-end (infinity and beyond). Built with a REST API, WooCommerce can integrate with virtually any service. Your store’s data can be accessed anywhere, anytime, 100% securely. WooCommerce allows developers to easily create, modify, and grow a store that meets their specifications. No matter the size of the store you want to build, WooCommerce will scale to meet your requirements. With a growing collection of more than 300 extensions, you can enhance each store’s features to meet your client’s unique needs — or even create your own solution. If security is a concern, rest easy. WooCommerce is audited by a dedicated team of developers working around the clock to identify and patch any and all discovered bugs. We also support WooCommerce and all its extensions with comprehensive, easily-accessible documentation. With our docs, you’ll learn how to create the exact site your client needs. = Extensions galore = WordPress.org is home to some amazing extensions for WooCommerce, including: - [Google Analytics](https://wordpress.org/plugins/woocommerce-google-analytics-integration/) - [Delivery Notes](https://wordpress.org/plugins/woocommerce-delivery-notes/) - [PDF Invoices and Packing Slips](https://wordpress.org/plugins/woocommerce-pdf-invoices-packing-slips/) - [Affiliates Integration Light](https://wordpress.org/plugins/affiliates-woocommerce-light/) - [New Product Badges](https://wordpress.org/plugins/woocommerce-new-product-badge/) Keen to see them all? Search WordPress.org for ‘WooCommerce’ to dive in. If you’re looking for something endorsed and maintained by the developers who built WooCommerce, there are a plethora of premium eCommerce extensions, the most popular of which include: - [WooCommerce Subscriptions](https://woocommerce.com/products/woocommerce-subscriptions/) - [WooCommerce Memberships](https://woocommerce.com/products/woocommerce-memberships/) - [WooCommerce Bookings](https://woocommerce.com/products/woocommerce-bookings/) - [Dynamic Pricing](https://woocommerce.com/products/dynamic-pricing/) - [Table Rate Shipping](https://woocommerce.com/products/table-rate-shipping/) - [Product CSV Import Suite](https://woocommerce.com/products/product-csv-import-suite/) And there’s plenty more where they came from. Visit our [extensions page](https://woocommerce.com/product-category/woocommerce-extensions/) to find out everything you’re capable of and all that's possible with premium WooCommerce extensions. = Join our growing community = When you download WooCommerce, you join a community of more than a million store owners, developers, and WordPress enthusiasts. We're one of the fastest-growing open source communities online, and no matter your skill level we'd love to have you! If you’re interested in contributing to WooCommerce we’ve got more than 350 contributors, and there’s always room for more. Head over to the [WooCommerce GitHub Repository](https://github.com/woocommerce/woocommerce) to find out how you can pitch in. Want to add a new language to WooCommerce? Swell! You can contribute via [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/woocommerce). And, finally, consider joining or spearheading a WooCommerce Meetup locally, more about those [here](https://woocommerce.com/woocommerce/meetups/). == Installation == = Minimum Requirements = * PHP version 5.2.4 or greater (PHP 7.2 or greater is recommended) * MySQL version 5.0 or greater (MySQL 5.6 or greater is recommended) Visit the [WooCommerce server requirements documentation](https://docs.woocommerce.com/document/server-requirements/) for a detailed list of server requirements. = Automatic installation = Automatic installation is the easiest option as WordPress handles the file transfers itself and you don’t need to leave your web browser. To do an automatic install of WooCommerce, log in to your WordPress dashboard, navigate to the Plugins menu and click Add New. In the search field type “WooCommerce” and click Search Plugins. Once you’ve found our eCommerce plugin you can view details about it such as the point release, rating and description. Most importantly of course, you can install it by simply clicking “Install Now”. = Manual installation = The manual installation method involves downloading our eCommerce plugin and uploading it to your webserver via your favourite FTP application. The WordPress codex contains [instructions on how to do this here](https://codex.wordpress.org/Managing_Plugins#Manual_Plugin_Installation). = Updating = Automatic updates should work like a charm; as always though, ensure you backup your site just in case. If on the off-chance you do encounter issues with the shop/category pages after an update you simply need to flush the permalinks by going to WordPress > Settings > Permalinks and hitting 'save'. That should return things to normal. = Sample data = WooCommerce comes with some sample data you can use to see how products look; import sample_products.xml via the [WordPress importer](https://wordpress.org/plugins/wordpress-importer/). You can also use the core [CSV importer](https://docs.woocommerce.com/document/product-csv-importer-exporter/) or our [CSV Import Suite plugin](https://woocommerce.com/products/product-csv-import-suite/) to import sample_products.csv. == Frequently Asked Questions == = Where can I find WooCommerce documentation and user guides? = For help setting up and configuring WooCommerce please refer to our [user guide](https://docs.woocommerce.com/documentation/plugins/woocommerce/getting-started/) For extending or theming WooCommerce, see our [codex](https://docs.woocommerce.com/documentation/plugins/woocommerce/woocommerce-codex/). = Where can I get support or talk to other users? = If you get stuck, you can ask for help in the [WooCommerce Plugin Forum](https://wordpress.org/support/plugin/woocommerce). For help with premium extensions from WooCommerce.com, use [our helpdesk](https://woocommerce.com/my-account/tickets/). = Will WooCommerce work with my theme? = Yes; WooCommerce will work with any theme, but may require some styling to make it match nicely. Please see our [codex](https://docs.woocommerce.com/documentation/plugins/woocommerce/woocommerce-codex/) for help. If you're looking for a theme with built in WooCommerce integration we recommend [Storefront](https://woocommerce.com/storefront/). = Where can I request new features, eCommerce themes and extensions? = You can vote on and request new features and extensions in our [WooIdeas board](http://ideas.woocommerce.com/forums/133476-woocommerce) = Where can I report bugs or contribute to the project? = Bugs can be reported either in our support forum or preferably on the [WooCommerce GitHub repository](https://github.com/woocommerce/woocommerce/issues). = Where can I find the REST API documentation? = You can find the documentation of our REST API on the [WooCommerce REST API Docs](https://woocommerce.github.io/woocommerce-rest-api-docs/). = WooCommerce is awesome! Can I contribute? = Yes you can! Join in on our [GitHub repository](https://github.com/woocommerce/woocommerce/) :) == Screenshots == 1. The WooCommerce settings panel. 2. WooCommerce products admin. 3. Product data panel. 4. WooCommerce sales reports. 5. A single product page. 6. A product archive (grid). == Changelog == = 3.6.0 - 2019-xx-xx = * Enhancement - Merged WooCommerce Gutenberg Products Block feature plugin. Adds blocks for the new editor, including hand picked products, featured products, products by category/attribute, sale products, new products, top rated products, and best selling products. #22954 * Enhancement - Only include order erasure bulk action if erasure is enabled in settings. #22354 * Enhancement - Customer notes containing URLs now automatically converts to clickable links. #21927 * Enhancement - Add increase and decrease stock options to bulk edit form. #22475 * Enhancement - Allow states in zones to be searched by country name. #22339 * Enhancement - Added registration success notices to account pages. #22650 * Enhancement - Store notice is visible again if the notice text is changed. #22645 * Enhancement - Add aria-label attribute to shop orderby selector to improve accessibility. #22683 * Enhancement - When adding, editing, and deleting items manually from orders, the corresponding product stock will be updated to reflect the event and an order note will log the event. #22329 * Enhancement - Added suggestions for official extensions to Products, Edit Product and Orders screens. * Enhancement - Store attribute values as post_excerpt for variations to support easier searching for variations. #22083 * Tweak - Generalize shipping estimate text on cart page. #22467 * Tweak - Include auto draft orders in order list filters. #22380 * Tweak - Only include the network orders widget on the main site dashboard. #22318 * Tweak - Only show available shipping continents when selecting shipping zone region. #22131 * Tweak - Use Shortcode block on default WooCommerce pages. #21817 * Tweak - Show full category hierarchy in product URLs when term IDs are not sequential. #22526 * Tweak - Make sure account and checkout endpoints only work under account and checkout pages. #22631 * Tweak - Show loading graphic when order form is submitted. #22664 * Tweak - Add alt text to gallery images #22863 * Tweak - Improved `display_name` generation during checkout. #22786 * Tweak - Send correct calling code and phone number to PayPal standard when using non-US addresses. #22693 * Tweak - Added tooltip to refund-amount input box and made it readonly when taxes are enabled. #22820 * Tweak - Remove admin alert for the WooCommerce Gutenberg Products Block feature plugin. #22982 * Tweak - Setup Wizard: support keyboard navigation to toggle on/off features. #22936 * Tweak - Set reply-to address for all emails. #22979 * Tweak - Setup wizard redirection improvements. #22977 * Tweak - Simplify display of discount amounts within orders. #22949 * Template - Moved the order of rememberme checkboxes for accessibility so they tab in order. #21454 * Template - New structure for attributes template, including new `woocommerce_display_product_attributes` filter. #22480 * Template - Admin cancelled order email reworded. #22971 * Dev - Update action scheduler to version 2.2.1. #23016 * Dev - Use ActionScheduler for database updates. Improved update notice. #22904 * Dev - Introduce `woocommerce_reviews_title` filter. #22216 * Dev - Added `woocommerce_cheque_process_payment_order_status` filter allowing plugins to change the order status to the Cheque gateway. #21402 * Dev - Add the current coupon object to the `woocommerce_get_shop_coupon_data` filter. #21442 * Dev - New filter `woocommerce_gallery_image_html_attachment_image_params` for manipulating gallery images. #22005 * Dev - New filter `woocommerce_widget_get_current_page_url` for manipulating links in widgets. #21537 * Dev - Move wc_get_template filter to allow plugins to register locations for template files that do not exist in WooCommerce core. #21764 * Dev - Add support for custom classes on global/quantity-input.php. #21553 * Dev - Pass product object to `woocommerce_add_to_cart_redirect` filter where appropriate. #22123 * Dev - Add support for forgetting the cart contents and user session when switching between accounts using the User Switching plugin. #21991 * Dev - Added a consistent form class to the Track Order Form. #21991 * Dev - Add $orderby and $order params to filter `woocommerce_get_catalog_ordering_args`. #22257 * Dev - Add new pre query filter to WC_Product_Data_Store_CPT::search_products(). #22165 * Dev - Added additional parameters to the `woocommerce_variation_option_name` filter. #21153 * Dev - Added new filter `woocommerce_get_min_max_price_meta_query`. #22255 * Dev - Added a filter to WC_REST_CRUD_Controller::get_collection_params method to allow developers to change params in the same way as WP_Rest_Posts_controller::get_collection_params. #21562 * Dev - Add $zone param to woocommerce_shipping_zone_before_methods_table and woocommerce_shipping_zone_after_methods_table actions. #21961 * Dev - Added `woocommerce_geolocation_ajax_get_location_hash` filter. #22350 * Dev - Added `woocommerce_variation_prices_array` filter. #21003 * Dev - Added `wc_emptied_cart` javascript event when cart is emptied. #22469 * Dev - Switched `woocommerce_ordered_again` hook to ref_array. #22425 * Dev - `woocommerce_checkout_before_order_review_heading` action added in checkout form template. #22481 * Dev - Added `woocommerce_variation_header` hook in variations list. #21341 * Dev - Add a filter, woocommerce_current_user_can_edit_customer_meta_fields, to bypass manage_woocommerce when editing customer meta fields. #22277 * Dev - Adds filter on the return value of function 'get_item_tax_rates'. This gives developers the possibility to prevent the mandatory caching of tax rates. #22488 * Dev - Add filters for mail callback in WC_Email::send method. #22394 * Dev - Add an instance method to WC_Admin_Taxonomies. #21884 * Dev - Added `woocommerce_order_is_pending_statuses` filter and `wc_get_is_pending_statuses` function. #22409 * Dev - Filter save_payment_method_checkbox to allow "Save to account" checkbox to be removed from the checkout form. #21859 * Dev - Added triggers to the gallery script to allow 3rd parties to run scripts before and after initialization. #22501 * Dev - Added `woocommerce_add_to_cart_qty_html` filter. #21069 * Dev - Prevent extract from polluting hook arguments in wc_get_template(). #21722 * Dev - Add `woocommerce_pre_remove_cart_item_from_session` hook to allow removal of cart items when the cart is loaded from the session. #22290 * Dev - Add `$attribute` to `woocommerce_product_option_terms` filter. #21648 * Dev - Added error handling and timeout to cart fragment ajax call. #21043 * Dev - Remove unused legacy 'woocommerce_lock_down_admin' option and use filter only instead. #17796 * Dev - Allow custom settings sections in the Shipping tab. #21719 * Dev - Update Emogrifier library to 2.1. #22342 * Dev - Moved core state codes to a single file. #22339 * Dev - Adds filter for product categories displayed by `product_categories` shortcode. #22571 * Dev - Moves cart hash calculation to WC_Cart class. #21050 * Dev - Removed deprecated Simplify gateway. #22410 * Dev - Added `woocommerce_paypal_force_one_line_item` filter to control how items are sent to PayPal. #22653 * Dev - Added `woocommerce_update_product_stock_query` to filter the direct sql query to update product stock. #22672 * Dev - Added `woocommerce_product_loop_title_classes` filter to modify product title loop classes. #22717 * Dev - Delay `woocommerce_loaded` hook until all plugins are loaded. #22536 * Dev - Added `woocommerce_product_price_class` filter to modify product price classes. #22748 * Dev - `woocommerce_product_stock_status_options` filter added for stock status options. #22834 * Dev - `woocommerce_before_cart_emptied` action before cart is emptied. #22846 * Dev - Added filters for shipping options - `woocommerce_shipping_ID_option` and `woocommerce_shipping_ID_instance_option`. #22771 * Dev - Refactor comment/rating update functions. #22909 * Dev - Introduced wc_sanitize_phone_number() function. #22962 * Dev - Added `woocommerce_get_product_subcategories_cache_key` filter to allow the cache to be renamed if for instance the site runs in multiple languages and needs a unique cache per language. #22915 * Dev - Inactive, MU, Dropin plugins and WooCommerce.com account connection status added to System Status Report. #22887 * Dev - Make error handling consistent in payment processing for pay page and checkout. #22916 * Dev - Improved usage and event tracking (if opted in). #22955 * Dev - Pass class context to woocommerce_email_styles filter. #23027 * Fix - Use correct address for taxes when applying/removing coupons. #22802 * Fix - Hide ratings on the shop page when reviews are disabled. #22476 * Fix - Fix W3C validation of single product page quantity input. #22333 * Fix - Give product variations a unique guid after creation. #22324 * Fix - Deduct correct refunded amounts in calculated net daily sales export CSV. #22518 * Fix - Country sorting for stores which use a language that uses a lot of accented characters, e.g. Spanish. #22417 * Fix - Customer VAT exempt status now carries through to order when placed via checkout. #22458 * Fix - Handle full refunds for taxes by code report. #21843 * Fix - Option "Used for variations" should show only for variable products when saving attributes. #22524 * Fix - Allow pa_ in product attribute slugs. #22112 * Fix - Fix customer creation dates in API. #22269 * Fix - Get widget instance setting defaults so it shows in customiser before save. #22345 * Fix - PR state codes. #22339 * Fix - Allow selecting states from the Country / State drop-down for your store address when you have the option enabled to sell to specific countries. #22339 * Fix - Restrict the price filter widget to filtering the main product query. #22621 * Fix - Default placeholder image resizing. #22443 * Fix - HTML tags should be stripped from description in Structured Data of Product. #22596 * Fix - For logged in customers, pull default address fields from customer object, not session object, to avoid incorrect mixes of data. #22392 * Fix - Misc tax rounding improvements. #22420 * Fix - Respect shop page subcategories setting when `page/N/` is added to the URL. #22589 * Fix - Check for decoded taxonomy name when unsetting product terms. #22740 * Fix - If date paid is not set but payment complete status has passed, set it. #22735 * Fix - Prevent webhooks for drafts, and correct create vs updated for manual orders. #22731 * Fix - Ignore invalid default customer locations. #22357 * Fix - The state select field was missing a placeholder. #22357 * Fix - Fix state field rendering when customer address is not in a valid selling country. #22357 * Fix - Correctly handle negative fees when using the REST API. #22782 * Fix - Make sure local_pickup taxes do not hang around when local_pickup is not available for the selected location during checkout. #22826 * Fix - Remove Plugin and Theme background installer hooks, cannot run as there are no events scheduled for it. #22799 * Fix - Trigger zoom if moving cursor over image quickly in product gallery. #22784 * Fix - PayPal: Add meta data, before changing order status. #22892 * Fix - Make price filter widget tax aware when you have excl prices entered but show prices incl of tax. #22540 * Fix - Loop attribute panels to disable options rather than look at values to prevent notices. #22891 * Fix - When deleting zone methods, also remove setting options. #22867 * Fix - Correctly show state fields after posting the edit address form. #22948 * Fix - Validate coupon usage limit for manual orders correctly before order is saved. #22980 * Fix - Make coupon code sanitization match post_title sanitization. #22945 * Fix - Ensure WC_Helper sees plugin activation events via CLI. #22972 * Fix - Setup wizard redirection improvements. #22977 * Fix - Correctly show stock status for products when manually creating an order in the admin. #22997 * Fix - After logging in update customer session ID. #23001 * Fix - Narrow viewport css in setup wizard. #23033 * Fix - Allow entering of date only ( no time ) when placing a singular product on sale. #22973 * Performance - Product meta data lookup table used for sorting and slow queries. #22718 * Performance - Prime caches when reading variations. #22587 * Performance - Only include REST API classes and objects during `rest_api_init` hook. #22615 * Performance - Improved how versioned transients are set/cleanup to avoid cron. #22511 * Performance - Optimized product CSS class functions to avoid multiple product reads and duplication. #22610 * Performance - Improved caching of template loader, product types, and layered nav widget. #22612 * Performance - Remove external lookup of IP addresses on localhost. #22608 * Performance - Improved speed of the `find_matching_product_variation` variation lookup function. #22423 * Performance - Prevent frontend code from being loaded during REST API. #21090 * Performance - Load only active webhooks on pages and allow limits to be set by developers. #22760 * Performance - Index on downloadable_product_permissions to improve speed when fetching downloads for customers. #22906 * Performance - Improved term ordering queries, making the sorting apply by default via the DB query rather than sorting all terms with PHP. Removed legacy term meta table usage. #22570 * Performance - Use day, not time, in status widget for caching. #22950 * Performance - Improve slow term ordering by using queries instead of php. #22570 * Performance - Removes legacy woocomerce_termmeta table and swap out all calls to legacy term meta functions to the new WP ones. #22570 * Performance - Apply term sorting using get_terms_defaults hook instead of custom parameters. #22570 * Performance - Use pre_get_terms hook to detect menu_order sorting param and apply to the term query. Meta sorting is now possible through WP. #22570 * Performance - Use terms_clauses hook to support numeric name sorting and to improve the menu order sorting so it works if meta is missing. #22570 * Performance - Added caching to System Status Report. #22887 * Performance - Delete empty meta on update in data-stores. #22773 * Performance - Image regeneration edge cases. #22818 * Performance - Don’t query for an order count unnecessarily. #22984 * Performance - Add caching to attribute functions. #22938 * Performance - Add ability to run product lookup table updates via WP CLI. #23031 * Localization - Modify administrative regions of Greece to default to their english ISO 3166-2 names, instead of using the native GR names. #21945 * Localization - Added US Minor Outlying Islands as states to avoid confusion with US. #22468 * Localization - Dutch postcode validation. #22316 * Localization - Made municipality address field optional for Latvia. #22487 * Localization - Added new Venezuelan currency Bs S. #22435 * Localization - Added Danish locale. #22495 * Localization - Update Peruvian currency. #22602 * Localization - Update CA address format. #22692 * Localization - Updated JP field order. #22774 [See changelog for all versions](https://raw.githubusercontent.com/woocommerce/woocommerce/master/CHANGELOG.txt). == Upgrade Notice == = 3.0 = 3.0 is a major update. Make a full site backup, update your theme and extensions, and [review update best practices](https://docs.woocommerce.com/document/how-to-update-your-site) before upgrading.