
WooCommerce provides a simple way to log your custom events and debug your custom code and plugins. By using this built-in tool, you can easily track errors, troubleshoot issues, and log important actions, making debugging more efficient in WooCommerce development.
Hosted by Rodolfo Melogli
Session overview
In this webinar, we’ll dive into the WooCommerce Logger class (WC_Logger) and explore how it can be a game-changer for debugging and tracking custom events within your WooCommerce store. Whether you’re a developer building custom plugins, adding bespoke features, or troubleshooting code, WC_Logger provides a powerful yet easy-to-use tool to log everything you need.
When working with WooCommerce, debugging is a crucial part of the development process. Errors, unexpected behaviors, and performance issues are common, and without a robust logging mechanism, it can be difficult to pinpoint the cause of problems. The WC_Logger class allows developers to log detailed information about events and errors, making it easier to diagnose issues and improve the reliability of your store.
When you build custom functionality in WooCommerce—whether it’s a new payment gateway, shipping method, or custom admin tools—you often need to monitor the behavior of that code. WC_Logger allows you to log events that are important to your development process. You’ll learn how to write these custom log entries, store them, and retrieve them for analysis.
Throughout the session, we’ll demonstrate live examples of how to log events in WooCommerce. You’ll see how easy it is to implement logging within your custom code and how the logs appear in the WooCommerce admin interface, giving you direct access to important debugging data. Whether you’re working on a small custom feature or a large-scale project, you’ll walk away from this webinar with a deeper understanding of how to leverage the WooCommerce Logger class to improve your workflow and troubleshooting process.
So, join me for this hands-on, live session where we’ll unlock the full potential of custom logs. Don’t miss the opportunity to learn from my real-world examples – as well as the chance to learn and connect with the Business Bloomer Club WooCommerce community in real time!
Video Recording
If you are a member, please log in.
Otherwise, here is why you should join the Club.
Useful Links
- Logging in WooCommerce: https://developer.woocommerce.com/docs/logging-in-woocommerce/
- WooCommerce: How to Create Custom Logs: https://www.businessbloomer.com/woocommerce-create-custom-logs/
- WooCommerce Function of the Week: wc_get_logger: https://poststatus.com/woocommerce-function-of-the-week-wc_get_logger/
Useful Snippets
/**
* @snippet Log Product Title Changes
* @how-to businessbloomer.com/woocommerce-customization
* @author Rodolfo Melogli, Business Bloomer
* @compatible WooCommerce 9
* @community https://businessbloomer.com/club/
*/
add_action( 'post_updated', function( $post_ID, $post_after, $post_before ) {
// BAIL IF NOT A PRODUCT
if ( 'product' !== $post_before->post_type ) return;
// BAIL IF TITLE DIDNT CHANGE
if ( $post_after->post_title == $post_before->post_title ) return;
// LOAD THE WC LOGGER
$logger = wc_get_logger();
// LOG SLUGS TO CUSTOM LOG
$logger->info( 'Product ID ' . $post_ID . ' title changed from "' . $post_before->post_title . '" to "' . $post_after->post_title . '"', array( 'source' => 'product-changes' ) );
}, 10, 3 );
/**
* @snippet Log Product Stock Changes
* @how-to businessbloomer.com/woocommerce-customization
* @author Rodolfo Melogli, Business Bloomer
* @compatible WooCommerce 9
* @community https://businessbloomer.com/club/
*/
add_action( 'woocommerce_update_product', function( $product_id, $product ) {
// GET PRODUCT STOCK
$qty = $product->get_stock_quantity();
// LOAD THE WC LOGGER
$logger = wc_get_logger();
// WRITE TO CUSTOM LOG
$logger->info( 'Product ID ' . $product_id . ' stock changed to: ' . $qty, array( 'source' => 'product-changes' ) );
}, 10, 2 );
/**
* @snippet Send Email Upon New Log Entry
* @how-to businessbloomer.com/woocommerce-customization
* @author Rodolfo Melogli, Business Bloomer
* @compatible WooCommerce 9
* @community https://businessbloomer.com/club/
*/
add_filter( 'woocommerce_register_log_handlers', function my_wc_log_handlers( $handlers ) {
$recipients = array( 'info@example.com' );
$threshold = 'critical'; // Only send emails for this level and higher.
$handlers[] = new WC_Log_Handler_Email( $recipients, $threshold );
return $handlers;
});
Upcoming masterclasses
As a Business Bloomer / WooWeekly subscriber you can attend as many live classes you wish – for free. Here’s a list of upcoming events (we usually take a break for June-August, otherwise you should expect about 2 classes per month). Make sure to attend live so you can interact with the teacher and the other attendees!
How to Spin Up WooCommerce Test Websites For Free
Testing WooCommerce snippets, plugins, themes shouldn’t be a hassle. Let’s discover free…
Live Migrating a WooCommerce Site to HPOS
Migrating a WooCommerce site to HPOS can be complex, especially with 40,000+…
Generate WooCommerce Test Data: Products, Orders, Users
To properly test or develop a WooCommerce site, you need a large…
Available webinar recordings
As a Business Bloomer Club member you have full lifetime access to previous class recordings (as well as online courses, private community and more). Here’s the list of all past classes:
Conversion-Focused Redesign Of The WooCommerce Single Product Page
Let’s improve the boring WooCommerce Single Product page and encourage MORE users to convert. Hosted…
Allow Multiple Payments In The Same WooCommerce Order
All deposit / split / partial payment plugins generate an additional order for paying the…
Live Coding a Simple WooCommerce Checkout Currency Switcher
I definitely need a EUR/USD switcher in my Woo shop, and I’d love to try…
How to Find and Fix Slow Database Queries in WooCommerce
Learn how to resolve slow database queries in WordPress / WooCommerce websites. Use the right…
Live Coding a “Deal of the Week” Functionality For WooCommerce
I’ve always wanted to set up an automatic promotion on a different Woo product each…
Web Accessibility Basics for WooCommerce
Accessibility in ecommerce is increasingly a legal requirement, but it also helps you expand your…
How to Avoid Timeouts When Running Millions of WooCommerce Tasks
Meet Action Scheduler – a scalable processor of large queues of PHP jobs. Learn how…
WooCommerce Reimagined: Powering Up with the AI Advantage
Say goodbye to the same old, boring WooCommerce experience. Let’s dive in and see what…
Live Coding a WooCommerce LMS Plugin
Watch me code a simple WooCommerce plugin for selling and managing online courses. Masterclass overview…
– BACKED BY –
Is your WooCommerce store prepared for traffic spikes? Improve speeds up to 200% with our
managed WooCommerce hosting. Enjoy scalable server resources, rock-solid security, and 24/7 support.