nürnberg woocommerce talk - 11/24/16

30
THE VERY FIRST Nürnberger WooCommerce meetup Speaker: Thomas Shellberg

Upload: tshellberg

Post on 15-Apr-2017

179 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Nürnberg WooCommerce Talk - 11/24/16

THE VERY FIRSTNürnberger WooCommerce meetup

Speaker: Thomas Shellberg

Page 2: Nürnberg WooCommerce Talk - 11/24/16

Importing products in bulk

ACT I:

Page 3: Nürnberg WooCommerce Talk - 11/24/16

CSV Import Suite• Export existing products to a CSV file

• Edit the CSV header titles to match

WooCommerce input fields

• Select the CSV file

• Map any fields manually if needed

• If importing variations, import parent

products first and then the variations.

Page 4: Nürnberg WooCommerce Talk - 11/24/16

Tips/Tricks for running a large/intensive WooCommerce store

ACT II:

Page 5: Nürnberg WooCommerce Talk - 11/24/16

Don’t use shitty hosting.

Page 6: Nürnberg WooCommerce Talk - 11/24/16

Hosting recommendations• If possible, use a VPS or dedicated server

environment. This allows for greater control

over server technologies and variables.

• Mid-range stores can utilize less expensive

setups but have less control.

• Recommendations: Pressable, Siteground,

Flywheel, DigitalOcean.

Page 7: Nürnberg WooCommerce Talk - 11/24/16

PHP 7

http://www.zend.com/en/resources/php7_infographic

Page 8: Nürnberg WooCommerce Talk - 11/24/16

Useful optimization plugins

Page 9: Nürnberg WooCommerce Talk - 11/24/16

WP Performance ProfilerDesigned to help developers optimize the performance of

WordPress sites, running on PHP 5.3 to 5.6 web servers.

https://wpperformanceprofiler.interconnectit.com/

Page 10: Nürnberg WooCommerce Talk - 11/24/16

WP RocketCaching and compression plugin.

https://wp-rocket.me/

Page 11: Nürnberg WooCommerce Talk - 11/24/16

Redis pluginA persistent object cache backend powered by Redis.

https://wordpress.org/plugins/redis-cache/

Page 12: Nürnberg WooCommerce Talk - 11/24/16

Delete Expired TransientsDelete old, expired transients from the WordPress options table (wp_options), to

prevent them from bloating your database and even slowing down your website.

Page 13: Nürnberg WooCommerce Talk - 11/24/16

Plugins for Testing

Page 14: Nürnberg WooCommerce Talk - 11/24/16

Order Simulator pluginSimulates orders placed on a WooCommerce

site, which is very useful for load testing. The

most important metric for an eCommerce site

should be ‘Carts per minute’.

https://github.com/75nineteen/order-simulator-woocommerce

Page 15: Nürnberg WooCommerce Talk - 11/24/16

Product Generator plugin

Very useful plugin for generating products en

masse for testing the effect of a large product

catalog on a WooCommerce site.

https://wordpress.org/plugins/woocommerce-product-generator/

Page 16: Nürnberg WooCommerce Talk - 11/24/16

Query Monitor pluginGreat tool for debugging slow queries,

redirects, and HTTP requests.

Page 17: Nürnberg WooCommerce Talk - 11/24/16

Debug BarGreat tool for debugging slow queries,

redirects, and HTTP requests.

Page 18: Nürnberg WooCommerce Talk - 11/24/16

Loader.io

https://loader.io/tests

Web-based service for running automated load tests.

Page 19: Nürnberg WooCommerce Talk - 11/24/16

Tutorials for optimization

Page 20: Nürnberg WooCommerce Talk - 11/24/16

Designed to Speed up WooCommerce Search

Setting up Elasticsearch

https://guides.wp-bullet.com/install-configure-elasticsearch-speed-woocommerce-search/

Page 21: Nürnberg WooCommerce Talk - 11/24/16

Optimizing WooCommerce for thousands of

products

• Clear expired transients from wp_options table

• Move to PHP 7

• Create an index on the wp_options table

• Redis/Memcached object caching

85k product site initial load time: 1.4 seconds

Final load time: .35 seconds

https://www.wpdone.com.au/optimizing-wordpress-and-woocommerce-for-thousands-of-products/

Page 22: Nürnberg WooCommerce Talk - 11/24/16

Use a a secondary index table within the same site database.

• The primary benefit is for speeding up back-

end searches(orders and customers)

• The author of the plugin reduced the search

time for Orders from 40 seconds to 5

seconds!

• Tutorial and plugin:

• https://codeable.io/large-woocommerce-search-faster/

Page 23: Nürnberg WooCommerce Talk - 11/24/16

Optimization Technologies

• Non MySQL Database - MariaDB or Percona

• CDN - CloudFlare, MaxCDN

• Server Cache - Varnish

• Server stack - HHVM, LEMP, NGINX

• Minification - WPRocket, WP Super Cache

Page 24: Nürnberg WooCommerce Talk - 11/24/16

Future Improvements• Ability for WordPress to work with NOSQL

technologies(like Apache Cassandra).

• WooCommerce native support for multi-site

setups(sharing inventory, orders, etc).

• Major focus on performance in WC 2.7

• Native Performance Tools included with

WooCommerce

Page 25: Nürnberg WooCommerce Talk - 11/24/16

tl;dr• Upgrade to PHP 7

• Don’t use shitty shared hosting

• Use a CDN

• Use caching

• Use as few quality plugins as possible

• Constantly monitor and test

Page 26: Nürnberg WooCommerce Talk - 11/24/16

Example Large Sites

http://www.soulbrother.com/

http://alefbookstores.com/

http://shop.spectator.co.uk/

http://www.pagelines.com/

Page 27: Nürnberg WooCommerce Talk - 11/24/16

Resources

• Facebook groups:- Advanced WooCommerce- WooCommerce Help & Share

• Useful sites:- www.bobwp.com - woocommerce.wordpress.com-

Page 28: Nürnberg WooCommerce Talk - 11/24/16

Multi-language sites

ACT III:

Page 29: Nürnberg WooCommerce Talk - 11/24/16

Two options for multi-language

https://multilingualpress.org/

https://wpml.org/

Page 30: Nürnberg WooCommerce Talk - 11/24/16

Questions?