The 63rd issue of ProcessWire Weekly brings in all the latest news from the ProcessWire community: latest core updates, modules, and more. Read on!
Hello there, and welcome to the latest issue of ProcessWire Weekly! Hope you've had a great and productive week – it's time to grab a cup of coffee and dig into our weekly news splash, which hopefully contains something new and interesting for most of our readers.
This time we're taking a look at the latest release of ProcessWire, 2.6.10, and will also introduce a couple of modules; one that is brand new, and one that has been around for a while already, but never got a chance to be featured in our weekly posts.
Additionally we've got our regular site of the week section, introducing one of the latest and greatest ProcessWire sites out there. As always, we hope you enjoy our latest issue, and please don't hesitate to drop us a line if there's anything we could improve for our future issues!
Latest core updates: ProcessWire 2.6.10
There were again multiple new additions and improvements this week, as explained in detail by Ryan in his weekly processwire.com blog post. What you're seeing here is a summary of those updates, and for the full content you should take a closer look at Ryan's blog post.
Granular user-admin permissions
Until now, ProcessWire has had a single permission called user-admin, and any user with this permission has been able to edit all existing users (excluding superusers). 2.6.10 extends the existing system with new, optional user-admin-all and user-admin-[role] permissions.
With these new permissions, you can specifically grant the permissions to edit a) only guest users (user-admin), b) all users (user-admin-all), or c) only users of specific role (user-admin-[role]). In other words, this allows you to create roles responsible for a specific type of users, while not being able to modify the accounts of their peers, etc.
You can enable the new granular user-admin permissions by adding a user-admin-all permission yourself. In other words: unless you need this feature, you don't need to worry about it; everything will continue to work as it used to!
Improved permissions view in the Admin
Loosely related to the granular user-admin permissions update, ProcessWire's admin interface now has the ability to display permissions as a nested list. This is a usability update and makes the GUI more obvious now that we've got an increasing amount of "sub-permissions". The Lister Pro module also supports a similar nested hierarchy.
Added support for re-labeling the "name" field
Another relatively minor change, which could still improve usability in specific cases: you can now define the label of the "name" field of pages via Template settings.
This feature is particularly useful when the "name" field has a very specific meaning for a given template, such as being a product ID, etc. Instead of explaining to users over and over that the name is the same as the product ID, why not simply display it as Product ID in the first place?
Added support for ___upgrade($fromVersion, $toVersion) method to the module interface
In addition to the
___uninstall() methods, which ProcessWire triggers automatically when a module is installed or uninstalled, module authors can now implement a new
___upgrade() method, which ProcessWire calls when it detects module version change. This method receives two parameters:
This is a much-needed addition for modules that are complex, require their own data structures, have been around for a long time and are actively maintained, etc. Until now, some module authors have implemented similar features of their own, but having this as a core-level, standard feature is reassuring.
Automatic cache busting with core updates
That's it for the core updates of the week. As always, this was just a summary of the updates, so don't forget to check out the blog post by Ryan for more details!
Brand new Webmention module for ProcessWire
Webmention is a new ProcessWire module by gGregor Morrill, aka gRegorLove. Currently this module handles sending, receiving, parsing, and displaying webmentions – which, in a nutshell, are a method of automatically notifying any URL when you link to it and requesting notifications when other sites link to you.
For those already familiar with pingback (and other linkback types), webmention claims to be a "modern alternative" to these. There's a bunch of interesting links at the end of the Webmention forum post, so if you're interested in this module, webmentions, or the IndieWeb movement in general, head down to the ProcessWire forum for more details.
The module, from what we can tell so far, is well built and makes it very easy to get started with webmentions even without any prior knowledge of the whole concept. Big thanks to gRegor for sharing this project with us; it looks very promising, and we can't wait to see how it unfolds!
Please note that this module has been under development and small-scale testing for a while, but as of this writing it isn't in our modules directory yet, and the latest version is still a beta release. All the usual warnings regarding early-stage modules apply: until the author considers it stable, extra caution is highly recommended.
Introducing the Select File Fieldtype
This time we've got some extra room in our weekly post, so we're using it to introduce a module released before our weekly issues started. This module is the Select File Fieldtype by Martijn Geerts, and it is bundled with the Select File Inputfield module to provide a visible inputfield.
This module provides two very handy features:
- First of all, it allows the user to select one file, and stores it's name. This can be useful in many cases, such as allowing stylesheet or a logo file etc. to be selected from a collection of files available in a specific directory.
- Other, perhaps even more useful feature, is the ability to choose a template file for a page. This allows the user editing a page to choose the file used to render the page, essentially adding an easy-to-manage and extremely flexible multi-view support right out of the box!
Available configuration options for the field include excluding files or directories, hiding file extensions, specifying from which directory to show files from, enabling the "Change Page Template" feature discussed above, and enabling natural sorting for selectable files.
Thanks to Martijn for creating and sharing this very useful module. It's a very good example of how a relatively simple tool with a great concept behind it can still be a real game changer!
Site of the week: Ennepe-Ruhr Tourismus
Ennepe-Ruhr Tourismus is a tourism site dedicated for a particularly beautiful region of Ennepe-Ruhr in Germany. Local attractions, events, lodging, and everything else a tourist might find interesting is featured on this site.
This site has a lot of content, it's all very neatly presented, various templates are well designed, and specific pieces of content are enriched by well-placed little animations, fade-ins, carousels, and other (non-obtrusive) front-end tricks. All this coupled with effective lazy-loading of page content gives this site a very modern look and feel.
It's a shame that the site is only available in German. That's not exactly surprising, though, since a lot of our users are in fact from German-speaking countries. For those of us who can't handle the nuances of this fine language, Google Translate is once again an invaluable asset.
All in all, Ennepe-Ruhr Tourismus is a site of exceptional quality. Both the content and the design are top-notch, and we're very happy to have this site presented in our sites directory!
Stay tuned for our next issue
That's it for the 63rd issue of ProcessWire Weekly. We'll be back with more news, updates, and content next Saturday, 1st of August. 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!