afed4fba36
* Base Report data store utility functions - 1 Standardizing the data store classes will be easier if the base class contains simple utility functions that can replace logic implemented in multiple data stores. - set_db_table_name() assigns a WP DB table name class variable for the data store - get_db_table_name() retrieves the WP DB table name - prepend_table_name() prepends a field in a query fragment with the data store table name * add context, clause handling, and filters to reports data store * add generated SQL clauses to class properties * reduce id getter logic to single function with filter, add phpdocs to new filters * update table_name to private string for use in constructor * extract SQL query clause handling to its own class - Will allow for use in subquery processing without creating a get_data stub - Swap parameter order in add_sql_clause for readability - Add support for clearing multple clauses in one call * add context var to SqlQuery class * implement SqlQuery in Categories data store * implement subquery in categories data store * coupons data stores, more underlying refactor - fix warnings - make filtered id functions static - add limit parameter handling - update coupons data store - update coupon stats data store * refactor coupon stats data store * refactor customers and customer stats data stores * add context to subqueries * add missed prepend table name call * refactor downloads data store, fix some warnings * fix warnings, add separator parameter to filtered IDs * refactor taxes and tax stats data stores * refactor variations data store * refactor product and product stats data stores * make table_name static throughout for compat with static hook functions * refactor order and order stats datastores - use consistent visibility on initialize_queries() - update db_table_name logic to use static keyword instead of self * fix missed whitespace * fix segmenting query, add SqlQuery join clause * DRY data store constructors, class properties * prefix table name when not yet assigned * fix unit tests, interpolations, WPDB delete calls * DRY get_object_where_filter() * remove redundant table prefix from unit test init * fix refactored SQL queries * restore product paging * remove unused query param arrays * add first pass on data docs readme * remove debug code, errant SQL spacing * refactor out outer_from query element * merge wheres, joins before filtering * move all report column definitions to assign_report_columns * fix data readme markdown * small code formating fixes from review * remove static from query/datastore context * missed self:: in previous, add comments, small code moves * rename get_statement() to get_query_statement() * remove temporary query references * static reference, remove reference parameter, fix coupon compare * add todo reminders * use correct query parameter in coupon data stores |
||
---|---|---|
.. | ||
components | ||
examples | ||
.nojekyll | ||
README.md | ||
_sidebar.md | ||
data.md | ||
documentation.md | ||
feature-flags.md | ||
index.html | ||
layout.md | ||
page-controller.md | ||
stylesheets.md |
README.md
WooCommerce Admin
This is a feature plugin for a modern, javascript-driven WooCommerce Admin experience.
⚠️ This project is in active development, and is not ready for general use. You can follow the features in development by looking at the project's issues. We do not recommend running this on production sites.
Prerequisites
Gutenberg and WooCommerce should be installed prior to activating the WooCommerce Admin feature plugin.
For better debugging, it's also recommended you add define( 'SCRIPT_DEBUG', true );
to your wp-config. This will load the unminified version of all libraries, and specifically the development build of React.
Development
After cloning the repo, install dependencies with npm install
. Now you can build the files using one of these commands:
npm run build
: Build a production versionnpm start
: Build a development version, watch files for changes
There are also some helper scripts:
npm run lint
: Run eslint over the javascript filesnpm run i18n
: Create a PHP file with the strings from the javascript files, used to get around lack of JS support in WordPress.org.
Dev Docs
There is a "devdocs" page which is useful for displaying components individually outside of the application. It can be viewed via a normal npm start
build at http://<your-wp-site>/wp-admin/admin.php?page=wc-admin&path=/devdocs
.
This is useful for viewing of WooCommerce components components and ad-hoc testing.