In the 562nd issue of ProcessWire Weekly we're going to cover the latest core updates, introduce a very interesting triplet of newly released third party modules by Bernhard Baumrock, and more. Read on!
Welcome to the latest issue of ProcessWire Weekly. In this week's issue we'll walk you through the latest core updates, which actually involves not just one but actually two separate releases: ProcessWire 3.0.246 (stable) and ProcessWire 3.0.247 (development).
In other news we're going to check out a set of three new modules created by Bernhard Baumrock: RockQuickDates, RockInvoiceItems, and RockDevTools. And, as always, we've also got a new site of the week to check out, this week belonging to a digital growth agency based in Washington, D.C. — Knowlegiate.
Thanks to all of our readers for being here with us again, and as always, any feedback is most welcome – please don't hesitate to drop us a line if there's anything in your mind you'd like to share with us. Enjoy our latest issue and have a great weekend!
Latest core updates: ProcessWire 3.0.246 master and 3.0.247 dev
This week we've got not just one, but actually two new releases: 3.0.246, which is now the latest stable/master version, and 3.0.247, which is the latest development version. Ryan introduces both of these briefly in his latest weekly update at the ProcessWire support forum.
ProcessWire 3.0.246
Compared to our previous stable release, this one contains mainly minor bug fixes. We've covered most of these updates in our weekly updates, but if you want to see what's changed, check out the comparison between 3.0.244 and 3.0.246 via GitHub.
If you are currently using 3.0.244, our previous master release, this should be a very simple update, and obviously a recommended one as well, as it is mostly a bug fix release improving the stability of the core.
ProcessWire 3.0.247
There is a pretty big new feature included in 3.0.247: conditional hooks matching return value or type. This feature applies to hooking after methods that return a value, making it possible to define a hook that will trigger if the target method returns a specific value, a value matching a selector, or a specific type of value.
Here's a simple example, borrowed from the hooks documentation:
$wire->addHookAfter('Field::getInputfield:(label*=Currency)', function($event) {
$inputfield = $event->return;
$event->message("Matched '$inputfield->name' with label: $inputfield->label");
});
In this case the return value is an object with "label" property, and we're using selector syntax to match only objects with a label that contains the word "Currency". You can also check if a returned array contains specific value or if a specific string value was returned (:someValue
), or if returned string value matches a selector (:(=foo|bar)
).
If you want to match the return value by type, you must surround the type in brackets, e.g. Field::getInputfield:<InputfieldText>
. You can also specify multiple types by adding pipe character in between them (<InputfieldText|InputfieldEmail>
), as well as match regular, non-object PHP data types, e.g. <array>
, <bool>
, <float>
, <int>
, <null>
, <object>
, and <string>
.
You can find more details about this feature, along with additional samples, from the ProcessWire hooks documentation.
That's all for our core updates section this week. For more details, including some news about the upcoming website rebuild for processwire.com, be sure to check out the weekly update from Ryan as well. Thanks!
New module: RockQuickDates
RockQuickDates is a new, commercial third party module from Bernhard Baumrock. It was built as a part of the CRM/bookkeeping software that he is currently working on, and can be purchased as a stand-alone module or as a part of the RockSuite bundle.
RockQuickDates allows you to connect "date from" and "date to" fields, and calculate the duration between their values. Additionally the module adds buttons for quickly modifying the values of said date/time fields in customisable increments.

If you have any pre-sales questions, head down to the RockQuickDates support forum thread or check out the RockQuickDates docs page for more details. If you'd like to give this module a try, you can purchase it from the RockQuickDates page at baumrock.com.
New module: RockInvoiceItems
RockInvoiceItems is another new third party module created by Bernhard Baumrock. This module is available as a stand-alone purchase, or alternatively as a part of the commercial RockSuite module bundle.
RockInvoiceItems is an inputfield and fieldtype combination for handling invoice line items. It has an easy-to-use GUI with drag and drop support, as well as various, fully automatic calculations for both individual lines, as well as their combined values.
List of features currently provided by this module:
- Dynamic line item management (add/delete/clone/sort)
- Rich text editing item descriptions with TinyMCE
- Automatic calculations (subtotals, VAT, grand totals)
- Multiple VAT rates support
- Drag & drop sorting
- Easy to use PHP API, eg $items->subtotal(), $items->grandtotal()
- German translations included

If you have any questions, head down to the RockInvoiceItems support forum thread. You can purchase this module and view the documentation at the RockInvoiceItems page at baumrock.com.
New module: RockDevTools
Our third and final new module for this issue is called RockDevTools, and it was also created by Bernhard Baumrock. Unlike RockQuickDates and RockInvoiceItems, this module is available as a free download via GitHub.
The RockDevTools module is intended to be active in development environments only, and provides handy — if not essential — development tools: asset minification and live reload. The general idea is to run this module while you're developing a site, use it to build the minified set of assets, and then push those to the production environment.
As Bernhard explains in the RockDevTools support forum thread, it has similar features as his RockFrontend module, but the codebase has been cleaned up, and compatibility with template cache (which was not present in RockFrontend due to the way it worked, using page render hooks) is now built-in.
If you'd like to learn more about this module, head down to the RockDevTools docs page at baumrock.com. If you'd like to give it a try, you can clone or download the module's source code from the RockDevTools GitHub repository.
Big thanks to Bernhard for creating this module and sharing it with us!
Site of the week: Knowlegiate
Our latest site of the week belongs to Knowlegiate, which is a digital growth agency based in Washington, D.C. Their range of services includes content and brand development, web development, analytics and automation, and SEO.
We evolve as fast as digital landscapes change. While we leverage AI, automation, and advanced analytics, we never lose sight of what matters most—honest communication, real results, and human connection. Your growth is our mission. Let’s build something powerful together.
— Knowlegiate
The Knowlegiate website features a nice combination of modern web design, interesting visual effects, and a rather straigtforward layout and structure, which put together make the whole experience very enjoyable to a visitor. The site contains plenty of information about the services provided, the company itself, as well as their team — and of course an easy-to-use contact form.
As for behind the scenes details, the front-end of this site is powered by the Bootstrap front-end framework, with apparently relatively few other dependencies involved. Some of the ProcessWire modules we could spot on this site include Email Obfuscation and Page Hit Counter.
Our thanks to Knowlegiate for sharing this project with us, and also congratulations for their new, ProcessWire powered website. Great job all around!
Stay tuned for our next issue
That's it for the 562nd issue of ProcessWire Weekly. We'll be back with more news, updates, and content Saturday, 22nd of February. As always, ProcessWire newsletter subscribers will get our updates a few days later.
Thanks for staying with us, once again. Hope you've had a great and productive week, and don't forget to check out the ProcessWire forums for more interesting topics. Until next week, happy hacking with ProcessWire!
Post a comment