Repository navigation
ProducerKit 2.4.0
Three sales formats a beekeeper actually uses, and two features that turned out never to have worked.
Retailer stock answers the question a combined availability board cannot: someone in town wanting a jar today needs to know which of four shops to walk to. Deposits answer the one a nucleus colony raises — and building them uncovered that pre-orders could not be paid for through WooCommerce at all.
Added
Shops that carry your goods. Mark a location as a Retailer and record what they have. Their page gains an "Available here" list; every product page gains a "Where to find it" line naming the shops that currently stock it. Sold-out items drop off both, so nobody makes a wasted trip. Retailers need no accounts — you update it from your own delivery notes.
Per-product deposits on pre-orders. Take a fixed amount per item, a percentage, or the full price up front, and leave the rest for pickup. A $50 deposit on a nucleus colony takes $100 for two and leaves $300; jars in the same order ask for nothing. The balance is collected either way, chosen per pre-order: send a payment link, or take it at the table and mark it paid.
Made-to-order requests are called what your trade calls them. "Commission" is right for a potter and wrong for a beekeeper answering an enquiry about bulk honey, or a grower taking a special order.
Your profile now names the fields too, not just the categories. A beekeepers source is an Apiary with Forage Notes; a musicians is a Label with a Studio and Mastering Notes. The help text under each field follows the label.
An editor panel for sources. Their four fields were rendered on the front end and returned by the API with nowhere in the editor to enter them.
ProducerKit identifies itself to WooCommerce as an extension and declares compatibility with High-Performance Order Storage and the Cart & Checkout Blocks. Without this a store could be prevented from turning HPOS on.
A translation template ships with the plugin, so it can be translated without waiting for a WordPress.org listing.
Fixed
Pre-orders could never actually be paid for through WooCommerce. The pricing and the order-raising both existed but were never joined up, so the payment link the plugin promised for "a request" only ever appeared for commissions.
The editor is translatable throughout. The PHP was fully translated and the JavaScript beside it was hard-coded English — around 270 strings a translator could not reach.
Upgrading is safe: nothing here changes existing data or behaviour on its own. Pre-orders stay reservations until you mark a product as taking a deposit, and a site that never chose a producer profile sees the same labels it saw before.
Full changelog: https://github.com/jwincek/producerkit/blob/v2.4.0/CHANGELOG.md