ProcessWire Weekly #329

In the 329th issue of ProcessWire Weekly we'll cover the latest core updates, introduce a new module called Page View Statistics, and more. Read on!

Welcome to the latest issue of ProcessWire Weekly. In this issue we're going to walk you through the latest weekly update from Ryan, in which he mostly focuses on some new secure page file settings available in the latest version of the dev branch.

In other news we're going to dive into a brand new third party module known as Page View Statistics, as well as feature some recent support forum highlights: new projects built on top of ProcessWire, developer tools, etc. Last but not least we've got a brand new site of the week to introduce. Stick around and keep on reading for your weekly dose of ProcessWire goodies!

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

Weekly update for 28 August 2020 Ryan discusses a new feature that has just made it to the dev branch: template specific secure file settings. There are also some interesting observations from a recent volunteer project he's been working on — closely related to this week's core updates — and upcoming Pro modules.

New secure file options in ProcessWire 3.0.166

By default page files are accessible with direct URL regardless of the status of the page — unpublished, access controlled, etc. Although we've had an option to secure files site-wide ($config->pagefileSecure) for a long time now, this feature incurs some overhead, and site-wide protection isn't necessarily needed.

As of this week's version of the dev branch, and the soon-to-be-released 3.0.166 version, there's another, more fine-grained option as well: a template level secure files setting:

Screen capture showcasing the newly added template level pagefile access control settings.

A new "yes always" option is now also available. Once enabled, this option makes all file requests on pages using the template in question go through ProcessWire, regardless of the status of the page, which in turn makes all kinds of hook related goodness — from custom access control to download counters and such — much more viable.

In other news...

Although it's far from being as interesting as the brand new secure page file options, we thought it'd be worth mentioning that a long-standing circular reference error was fixed as well. Even if running into this issue was a relatively rare occurrence, getting it fixed means that there's now one less pitfall in the core, which is of course a great thing!

That's it for our core updates section this week. For more details be sure to check out the weekly core updates post from Ryan on the support forum. Thanks!

New module: Page View Statistics

For this issue we've got one new third party module to introduce: Page View Statistics. The module is introduced in more details in the tech-c.net blog, but in a nutshell this module keeps track of page visitors, and displays various visual graphs and tables for statistics: individual requests, monthly or yearly totals, and so on.

An example of the statistics views provided by Page View Statistics. Screenshot by tech-c.net.

Behind the scenes this module logs page views into the database, and makes use of third party libraries and services for converting IP addresses to country information, parsing browser details, etc. One thing that's worth keeping in mind is that since the module records visits on page render, it does not work if the request is served from cache in a way bypasses server rendering (browser cache, ProCache, etc.)

In addition to logging visits and related data, this module also provides an optional feature for tracking the duration of each visit. If enabled, this feature injects a bit of JavaScript that fires when the visit starts and again when it ends.

If you'd like to read more about this module, be sure to visit the announcement blog post. Questions and comments can be posted via the support forum, and you can get the latest version of the module from GitHub repository or the blog post.

Weekly forum highlights, tutorials, and other online resources

Here's a list of support forum highlights and other useful and/or interesting resources. As always, please let us know if there's anything important we've missed, so that we can include it in one of our future issues.

  • First of all a handy tool for the front-end devs among our readers: Responsively App is focused on developing responsive sites and apps faster. Marketing slogans aside this looks very neat, so thanks to Benjamin for the heads-up. This will definitely come in handy trying to get all those pesky devices behave :)
  • Another neat project, this time more closely related to Processwire, would be the Chilean Birds API, developed by Camilo Castro. This is an example of a React app on top of ProcessWire powered API running on a containerized (Docker) backend, so there's plenty of interesting stuff to dive into here!
  • One more entry in the "neat project" category: the Architekturführer Köln website, powered by ProcessWire and originally developed as a PWA, recently took another route, evolving into an installable Android app. Many good pointers in this thread, so be sure to check it out if this topic sounds intriguing.
  • Last but not least we've got something that should be interesting for those of you interested in translating ProcessWire to new languages, or perhaps maintaining a language pack: an easy way to setup an environment for translating ProcessWire. Current version is geared towards the German translation, but the goal is to make things easier for all languages. Nice work by @dotnetic!

If you're interested in ProcessWire news, discussions, and updates, there's always something going on at the support forum. Since we're only able to include a tiny selection of all that in our weekly updates, head down to the forum for more.

Site of the week: Werner Wehde GmbH

Our latest site of the week belongs to Werner Wehde GmbH. Wehde is a German company that supplies and advises their clients with technological components: flexible metallic elements, seals and molded products, aluminum parts, and more — from individual parts to implementation of assembly lines.

The Werner Wehde GmbH site was built by Markenpartner GmbH, and the primary job of the site is to provide an introduction to the company: team, services, products, partners, and contacts. Design wise it has an industrial look and feel to it — clean, modern, strong colors and typography, and angular shapes, icons, and industry images that liven things up real nice. The overall user experience is enjoyable, and the site feels quite polished.

When it comes to behind the scenes details, this is one of those cases where your guess is as good as ours. From what we can tell there are no familiar third party modules that would pop up on the front-end, and the front-end for that matter seems to be largely home-grown, with no indication of a full-blown front-end framework. JQuery, a bit of BEM(ish) CSS, and a sprinkle of custom JavaScript is all it takes to make this site tick.

Big thanks to the folks at Markenpartner GmbH for sharing this project with us, and our congratulations to Werner Wehde GmbH for their newly released, ProcessWire powered website. Very nice work!

Stay tuned for our next issue

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