Naming WooCommerce Extensions: Addon, Add-On, or AddOn?

Flat lay of scattered Scrabble tiles spelling 'NAMING' on a white background.

A common question for WordPress plugin developers creating extensions for their own WooCommerce plugins revolves around the proper naming convention.

Specifically, how should the “addon” part of the plugin name be formatted? This seemingly minor detail can impact clarity, consistency, and even potential trademark considerations.

A recent online discussion explored the different approaches and offered some valuable insights for plugin developers in the WooCommerce ecosystem.

Let’s examine the various styles and recommendations for naming your WooCommerce extensions.

Continue reading Naming WooCommerce Extensions: Addon, Add-On, or AddOn?

ACH Payment Gateway Plugins for WooCommerce

money, cash, dollars, finance, greenback, usd, bank, bank notes, money, money, money, money, money

In a recent Business Bloomer Club Slack thread, a member asked for recommendations on WooCommerce payment gateway plugins that support ACH (Automated Clearing House) payments.

ACH payments are a popular alternative to traditional credit card transactions, particularly in the United States, as they allow for direct bank-to-bank transfers with lower fees. This type of payment is ideal for businesses looking to save on transaction costs and those who want to offer their customers more payment options.

ACH payments are secure and efficient, but the question remains: how can WooCommerce store owners accept ACH payments on their websites? If you’re also looking for a solution to add ACH payment functionality to your WooCommerce store, here are some options and considerations for integrating ACH payments.

Continue reading ACH Payment Gateway Plugins for WooCommerce

WooCommerce Blocks: The Extensibility Challenge

In the fast-evolving landscape of ecommerce, WooCommerce has long stood out as a flexible and powerful platform, largely thanks to its deep extensibility. Developers (like myself), agencies, and store owners have historically leveraged its robust hook system to customize virtually every aspect of an online store.

However, with the advent of block-based editing and the new Cart and Checkout blocks, a palpable tension has emerged within the community. This shift, while promising a more streamlined user experience, has inadvertently created new hurdles for those who build and extend on the platform.

The very superpower of effortless customization, once a hallmark of WooCommerce, seems to have been diminished, leading to a crucial conversation about the future direction of the platform and its commitment to the developer ecosystem.

This was vividly illustrated in a WooCommerce Slack “office hours” session held just yesterday, where core block developers were present, and numerous passionate community developers participated.

The discussion went through the heart of these concerns, exploring the challenges faced by extension developers and the urgent call for renewed focus on developer-centric extensibility.

Continue reading WooCommerce Blocks: The Extensibility Challenge

Hide Given Categories @ WooCommerce Shop Page

supermarket, shelves, shopping, shelf street, supermarket shelves, purchase market, product range, sb-market, supermarket, supermarket, supermarket, supermarket, supermarket

In a recent Business Bloomer Club Slack thread, a member inquired about hiding specific categories from the default WooCommerce shop page without creating a parent category. They still wanted to display products from those hidden categories on separate pages.

This is a common challenge for WooCommerce store owners who need more control over the products shown on their shop page. Fortunately, there are a few methods to hide categories from the default shop page while still showing their products in other areas of the store. Below, we’ll explore different solutions, including code snippets and shortcodes, to help you achieve this goal.

Continue reading Hide Given Categories @ WooCommerce Shop Page

TranslatePress & WooCommerce: Pros and Cons

Four sale signs in different languages on a beige background, ideal for retail promotions.

In a recent Business Bloomer Club Slack thread, a user shared their experience with choosing a translation plugin for their WooCommerce store. With options like WPML and TranslatePress, many store owners are unsure which plugin offers the best features, compatibility, and reliability for multilingual WooCommerce sites.

While WPML has been a common choice, some users have faced challenges with stock and price synchronization. TranslatePress is another option, but it also has its own set of concerns, particularly around losing translations.

If you’re considering TranslatePress for WooCommerce or are simply looking for recommendations, the insights shared here could help you decide which translation tool is the best fit for your needs. Below, we’ll break down the pros and cons of TranslatePress, WPML, and other alternatives like Polylang and Weglot.

Continue reading TranslatePress & WooCommerce: Pros and Cons

WooCommerce: How to Configure Product and Order Sync

Overhead view of black modern electronics including smartphone, headphones, speaker, and controller on a table.

This is a guest post by Misha Rudrastyh of rudrastyh.com. If you like the content, make sure to thank him in the comments!

In this article, I’d like to talk about syncing products and orders between different standalone WooCommerce stores. More specifically, I am going to uncover the following topics:

  • What WordPress/WooCommerce hooks do we need to use to trigger the sync?
  • How to create the WooCommerce REST API requests inside the callback functions for the above-mentioned hooks.
  • How to do it without coding at all, just using a plugin.

Of course, for products, we are going to sync all the product information, like gallery images, attributes, variations, etc. For orders: billing, shipping addresses, custom metadata, customers, etc. But we will come back to this moment a little bit later as well.

Continue reading WooCommerce: How to Configure Product and Order Sync

WooCommerce: “Beautify” Item Meta in Order Emails

Since the latest WooCommerce releases, the transactional emails have received a fresh update thanks to the “Enable modern email design for transactional emails” option—also called email_improvements_enabled—which you can activate under Advanced > Features settings.

This new email layout offers a cleaner and more modern look, improving the overall customer experience. However, one side effect is that the order item meta information in emails can sometimes appear cluttered or less readable. To help you fix this, today we’re sharing a straightforward code snippet that will beautify the order item meta displayed in WooCommerce transactional emails.

This tweak improves how extra product details are shown, making them clearer and more appealing for your customers. Let’s get right to the snippet and enhance your WooCommerce emails!

Continue reading WooCommerce: “Beautify” Item Meta in Order Emails

How to Handle SQL Injection Attempts in WooCommerce

Detailed view of HTML and CSS code on a computer screen, concept of programming.

In a recent Business Bloomer Club Slack thread, a user shared a concern regarding SQL injection attempts on their WooCommerce store. The user had noticed suspiciously crafted URLs in the cache, looking like potential attacks targeting their site’s security.

These URLs included SQL injection payloads designed to exploit vulnerabilities in their database.

The good news is that while bots continuously probe websites for vulnerabilities, modern platforms like WordPress and WooCommerce are well-equipped to handle such threats. This post will break down what these attempts mean for your site and how to deal with them.

Continue reading How to Handle SQL Injection Attempts in WooCommerce

WooCommerce Ease of Use: Brutal or Just Confusing?

Engaging in online shopping using a credit card with a laptop for convenience and ease.

A recent online discussion sparked by a user’s frustration with the perceived complexity of WooCommerce compared to platforms like Shopify has ignited a debate about its ease of use.

The conversation touched upon the time investment required, the reliance on themes and extensions, and the overall user experience for those new to e-commerce.

Let’s delve into the different perspectives on whether WooCommerce’s approach is truly “brutal” or simply suffers from being part of the broader, more multifaceted WordPress ecosystem.

Continue reading WooCommerce Ease of Use: Brutal or Just Confusing?

High Volume of Spam Orders After WooCommerce Update

receipts, receipt, pay, shopping, wealth, grocery store, currencies, finance, shop, money, economy, groceries, euros, poverty, power, food bank, salary, ticket, in cash, to borrow, spend money, receipts, receipts, receipt, receipt, receipt, receipt, receipt

In a recent Business Bloomer Club Slack thread, a member mentioned encountering a surge of failed orders, possibly from spam, after a recent WooCommerce update. This issue was observed across three different sites, and the member wondered if anyone else had experienced similar problems.

The issue could be a “carding attack,” which is often random and can happen at any time. The member confirmed the orders ranged between £50 and lower-value items, but they had security measures like a firewall and a limit on orders from the same location.

Continue reading High Volume of Spam Orders After WooCommerce Update

WooCommerce: Bulk Updating Products with WP CLI

A vibrant display of beer crates stacked in a warehouse, showcasing various brands.

In a recent Business Bloomer Club Slack thread, a user sought help with bulk updating products using WP CLI after importing over 500 products via WP All Import. While the import process was successful, an issue persisted: the product breadcrumbs were still showing the old product category.

Interestingly, the problem was resolved simply by resaving the product, even without making any changes. The user was looking for a more efficient way to trigger this update for all products without manually saving each one.

WP CLI is a powerful tool for WordPress users, providing a command-line interface for managing WordPress sites. It can be used to perform bulk updates and automate various tasks, including product updates for WooCommerce. However, WP CLI doesn’t natively support product imports or updates with WP All Import, and the specific issue of re-saving products to refresh breadcrumbs required some creative thinking.

Continue reading WooCommerce: Bulk Updating Products with WP CLI

WooCommerce: Resolving WP Cron Issues with Pending Tasks

clock, wrist watch, timepiece, fossil, leather, bronze, chrono, chronograph, stopwatch, noble

In a recent Business Bloomer Club Slack thread, a user reported a situation where WP Cron was disabled for an unknown reason, causing WooCommerce database updates to not run after plugin updates. As a result, the site had accumulated over 1000 pending tasks. The user was seeking guidance on the best course of action to resolve this issue and ensure that the tasks were properly executed.

WP Cron is an essential part of WordPress that handles scheduling various tasks, such as database updates, sending emails, and other time-sensitive actions. WooCommerce, like many plugins, relies on WP Cron to perform routine updates and maintenance tasks. When WP Cron is disabled, tasks scheduled by plugins, including WooCommerce updates, will be left pending, potentially causing issues with the site’s functionality and performance.

Continue reading WooCommerce: Resolving WP Cron Issues with Pending Tasks

WooCommerce: Managing Initial Order Status

envelopes, letters, wooden stamp, stamp, mail, post office, envelopes, stamp, stamp, stamp, stamp, stamp, mail

In a recent Business Bloomer Club Slack thread, a member asked for help with setting the initial order status in WooCommerce based on specific cart conditions.

The challenge was that there are no payments involved in this store, so they had removed the payment methods using the following code:

add_filter( 'woocommerce_cart_needs_payment', '__return_false' );

The goal was to set the order status to “Processing” under certain conditions and to “RFQ” (Request for Quote) under others. Since there were no payments, the user needed to find the appropriate hook or filter to manage the initial status before any order events occurred.

Continue reading WooCommerce: Managing Initial Order Status

Temporary Flags in WooCommerce: Transients vs. Options

Close-up of a transparent hourglass with pink sand flowing, placed on a newspaper background.

A recent online discussion centered around the best approach in WordPress and WooCommerce to temporarily store a simple flag for a short duration, specifically ten minutes.

The goal is to ensure this flag persists across multiple page loads and isn’t cleared prematurely, with the specific use case of temporarily disabling emails.

The conversation explored the pros and cons of different WordPress data storage mechanisms like transients and options.

Let’s examine the recommended methods and the reasoning behind them for managing temporary flags in your WooCommerce store.

Continue reading Temporary Flags in WooCommerce: Transients vs. Options

WooCommerce: Minimum Order Amount on Blocks

cash register, printer, receipt, store, sale, bookkeeping, hotel, restaurant, order, vat, clean, sum, tax office, control, computer, accountancy, cash register, printer, receipt, receipt, receipt, receipt, receipt, vat

In a recent Business Bloomer Club Slack thread, a question arose about integrating the “Minimum Order Amount” functionality with WooCommerce Blocks.

The original code provided an error notification on the Cart and Checkout pages if the order subtotal was below a specified threshold, but only worked with legacy Cart and Checkout shortcodes. However, with the rise of WooCommerce Blocks, ensuring compatibility with the block-based checkout flow is becoming increasingly important.

This article discusses how the minimum order amount logic can be adapted for blocks and includes a custom function that uses WooCommerce’s woocommerce_store_api_cart_errors hook. Keep reading to explore how this solution works for both traditional and block-based checkouts.

Continue reading WooCommerce: Minimum Order Amount on Blocks