ProcessWire Weekly #424

In the 424th issue of ProcessWire Weekly we'll check out the latest weekly update from Ryan, introduce a new third party module, and more. Read on!

Welcome to the latest issue of ProcessWire Weekly. In this week's issue we're going to check out the latest weekly update from Ryan, and take a quick look at the latest core updates. While the core version remains steady at 3.0.201, a handful of small fixes and improvements have been introduced to the dev branch this week.

In other news we're going to introduce a brand new third party module called Markup Google Translate, and — as always — also highlight a new site of the week, which this time belongs to a multimedia company based in Chicago: Freckled Sky.

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 and a weekly update from Ryan

In the latest weekly update Ryan briefly covers this week's core updates, which mostly focus on resolving user reported smaller issues, before introducing a handy caching solution that he's been using on an ongoing WordPress-to-ProcessWire migration to avoid expensive and unnecessary re-rendering of pages in a list.

You can check out the weekly update for the full recipe, but the gist of it is that while iterating over results from a $pages->find() query and rendering markup for each item individually, Ryan is simultaneously storing the rendered result in a per item HTML file within the cache directory and only regenerating it if the cache file is outdated.

What's new in the core this week

As for core updates, here's a summary of what's new this week in the dev branch:

  • A fix for an issue in InputfieldSelect.module where optionLabel() method didn't return labels for option values within optgroups

  • A fix for an issue where Page::get() could result in an illegal offset-type error

  • A fix for an issue where multi-lingual title field converted to regular single-language title field rendered incorrectly within image/file custom fields

  • A fix for an issue where InputfieldRadios forced entity encoded labels regardless of the entityEncodeText (and some loosely related updates to said inputfield)

  • A fix for an issue where image select within Repeater Matrix fields could result in an error ("Argument #1 ($value) must be of type Countable|array, null given")

  • A fix for an issue where replacing image file with a new one wasn't duplicating custom field values from original image to the new one

  • A fix for an issue where numeric template names were causing issues within the templates editor

  • A fix for an issue in WireHttp where the HTTP code description ("OK", "Page Not Found", "Internal Server Error" etc.) wasn't correctly resetting between requests

  • A fix for an issue where recently added ProcessPageList hidden pages option wasn't always working as intended

That's all for our core updates section this week. Be sure to check out the weekly update from Ryan for the caching solution we mentioned above, and feel free to also check out the weekly dev branch commit log at GitHub for more details about aforementioned core updates. Thanks!

New module: MarkupGoogleTranslate

Markup Google Translate is a brand new third party module from Jonathan Goodwin of Warp Design. In a nutshell this module provides a widget that allows visitors to easily translate your site to other languages using Google Translate, replacing the (mostly) deprecated official Google Translate widget.

Using Markup Google Translate is dead simple:

// display translation widget
echo $modules->get('MarkupGoogleTranslate')->displayTranslateWidget();

// display language specific translation URL
echo $modules->get('MarkupGoogleTranslate')->buildGoogleTranslateUrl('es');

It's probably worth noting that since Google has been fading out their own translation widget and promoting the use of their translation API instead, there's no telling if the approach used by this module will at some point stop working.

For more details, be sure to check out the Markup Google Translate GitHub repository, which includes details documentation for using the module, lists available languages and language codes, etc. If you have any questions, visit the support forum thread for Markup Google Translate.

Big thanks to Jonathan for developing this module and sharing it with the community!

Site of the week: Freckled Sky

Our latest site of the week, and the latest addition to the processwire.com sites list, belongs to Freckled Sky Inc.

Freckled Sky is a Chicago based team that specializes in multimedia shows, immersive installations, and multimedia production. Founded in 2013, Freckled Sky provides their services to clients worldwide, and their productions have won numerous awards.

The website of Freckled Sky was crafted by Paul Oats, and it is quite a multimedia show in itself, with plenty of video material, animated effects, and transitions to liven things up. Content wise the site is a typical business site, with details of the company, contact information (and contact form), and dedicated showcase pages for various productions.

The front-end of this site appears to be custom-built rather than based on a full-blown front-end framework, while some of the JavaScript libraries in use on this site include jQuery, Slick, and jQuery Lazy. The sites directory entry mentions that this site was migrated from WordPress to ProcessWire, and there are indeed still some lingering signs of the old system, including classes from the WordPress contact form plugin.

Thanks to Paul Oats for sharing this project with us, and congratulations to Freckled Sky for their newly ProcessWire powered website. The site looks and performs great — great work from everyone involved in this project!

Stay tuned for our next issue

That's it for the 424th issue of ProcessWire Weekly. We'll be back with more news, updates, and content Saturday, 1st of July. 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