ProcessWire Weekly #337

In the 337th issue of ProcessWire Weekly we're going to introduce a couple of brand new third party modules, take a closer look at the latest core updates, and more. Read on!

Welcome to the latest issue of ProcessWire Weekly. This time we're going to check out a couple of newly released third party modules, Datetime Carbon Format and Markup Metadata, as well as check out the latest core updates (ProcessWire 3.0.168).

Our latest site of the week belongs to a cafe located at the Black Forest, Germany — the Café Goldene Krone. Their newly released website was built by designconcepts, and it's a real treat, providing an impressive experience technically, visually, and content wise.

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.

Latest core updates: ProcessWire 3.0.168

In the core updates post this week Ryan introduced ProcessWire 3.0.168, available now via the dev branch, and also shared a few details about the (major) modules directory update he's currently working on.

To summarize:

  • Compared to the previous version, ProcessWire 3.0.168 contains 16 new commits, most of which focus on fixing bugs and introducing some minor improvements.
  • Modules directory is going to get a total overhaul. The backend is going to remain separate ProcessWire installation used by the main site via multi-instance setup, while the front-end is going to be built on the main website.
  • New modules directory will use the LoginRegisterPro module, and users (module authors) will have a central profile page for managing their modules and public profile information etc.

We'll have more details to share about the modules directory refresh next few weeks, so stay tuned for that — and, once again, if you have feedback or requests you'd like to share with Ryan, you can submit them via the weekly updates forum post.


New module: Datetime Carbon Format

For this issue we have a couple of newly released modules, and the first one of those is called Datetime Carbon Format. In a nutshell Datetime Carbon Format adds support for the Carbon extension to ProcessWire's datetime fields.

This module is accessed via code, and works on the front-end of your site (with output formatting enabled). Here's an example of what that could look in code, borrowed from the module's support form thread:

// 'date' is a datetime field with output format 'j/n/Y'
echo $page->date; // 20/10/2020
echo $page->date->add('7 days'); // 27/10/2020
echo $page->date->format('l, F j'); // Monday, October 20
echo $page->date->year; // 2020
echo $page->date->diffForHumans(); // 28 minutes ago

The module also sets up a new API variable "carbon", which can be used to directly access a Carbon instance, modify its settings, etc.:

$datetime = $carbon->createFromTimestamp($timestamp);

For more details, be sure to check out the Datetime Carbon Format README at GitHub. Date handling can get pretty tricky, so we're happy to have this module around just in case — big thanks to Philipp Daun for developing this module and sharing it with us!

New module: MarkupMetadata

Another new module for this issue is something called Markup Metadata. Developed by Ville 'Fokke' Saarivaara, this module does pretty much what you'd expect — it produces markup for various metadata keys you might want to provide for browsers, bots, and social media widgets: Open Graph, Twitter, hreflang, canonical, charset, viewport, etc.

Using this module is straightforward: configure the default values — or fields to read values from — via the module config screen, and then call the render method in your template files:

echo $modules->get('MarkupMetadata')->render();

Optionally you can provide a custom array of settings to override one or more of aforementioned default settings run-time:
echo $modules->get('MarkupMetadata')->setArray([
   'pageTitleSelector' => 'meta_title|title',
   'descriptionSelector' => 'meta_description|summary',
   'keywordsSelector' => 'meta_keywords',
   'imageSelector' => 'meta_image|image',
   'siteName' => 'My Awesome Site',

... and that's it. The module will now render the meta tags your site requires.

In case you're wondering, this module does indeed bear some similarities with existing SEO and metadata modules such as Seo Maestro. Generally speaking Markup Metadata is the least opinionated of the bunch: there's no admin GUI, all values can be defined and overridden via code, etc. No bells and whistles, just the bare necessities.

Big thanks to Fokke for developing this very useful module and sharing it with us!

Site of the week: Café Goldene Krone St. Märgen

Our latest site of the week belongs to Café Goldene Krone, a cafe serving a range of hand-made cakes and pies in the unique atmosphere of the former monastery hostel.

Located at St. Märgen in the middle of the Black Forest in Germany, the Café Goldene Krone in St. Märgen was born out of a village initiative, developing their unique gastronomic concept based on regional and seasonal ingredients, and simple, homemade cuisine. With courage and consistency, perseverance and creativity, they've held their own since 2004.

The website of Café Goldene Krone was built by designconcepts GmbH. The site serves as an introduction to the cafe, kitchen, and food, and provides a wealth of information — and a good grasp of the overall atmosphere — for new visitors via text content and photography. Café Goldene Krone has a separate webshop as well, built with

Behind the scenes this site is powered by ProcessWire (obviously) and the front-end is based on the Uikit front-end framework. Mobile users can install this site locally thanks to the PWA approach, and the site also features at least one familiar third party module: the commercial caching and minification tool ProCache.

Thanks to the team at designconcepts for sharing another example of their handiwork with us, and our congratulations to Café Goldene Krone for their new website!

Stay tuned for our next issue

That's all for the 337th issue of ProcessWire Weekly. We'll be back with more news, updates, and content Saturday, 31st of October. 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!

This post has 1 comment:

Andreas Scheffczyk on Monday 2nd of November 2020 11:04 am

Thank you very much. Always appreciated. :-)

Post a comment