In the 224th issue of ProcessWire Weekly we'll take a closer look at the latest core updates, introduce a new site profile, and showcase a splendid new site of the week. Read on!
Welcome to the 224th issue of ProcessWire Weekly! This time we'll focus on the latest core updates (ProcessWire 3.0.111), introduce the newly released Milligram site profile by rafaoski, and showcase a new site of the week belonging to a Canadian company called Centura.
As a special highlight this week we'd like to mention that netcarver is currently looking for more beta testers for his new street address fieldtype and inputfield. Particularly if you're not based in UK, USA, Canada, Australia, or NZ and would like to test drive a new module in development, drop him a PM or reply via the thread linked above. Thanks!
As always, a big thank you to all of you for being here with us, and please don't hesitate to drop us a note if there's anything in your mind that you'd like to share. Your feedback helps us focus on the things that you folks want to hear more about.
Latest core updates: ProcessWire 3.0.111
This week in the processwire.com blog Ryan shares his thoughts on two distinct but related topics: ProcessWire 3.0.111 and some of the new features it brings into the mix, and about his approach to long term development of ProcessWire and his method of keeping the core code solid through a process of continuous iteration and refactoring.
ProcessWire core development and the iterative refactoring approach
While we'll leave a detailed introduction to the general development philosophy behind ProcessWire to Ryan, the gist of his idea, as explained in this week's post, is that instead of doing major rewrites every few years or so, with ProcessWire our long term goal is on keeping the core and underlying architecture as stable as possible.
While ProcessWire as a whole remains stable, parts of it – individual core classes and modules – go through a refactoring process from time to time. This week's updates are a good example of that: by focusing on a couple of relatively small sections of the core we've managed to both eliminate redundancies and improve consistency simply by reorganizing and grouping features in a more meaningful way.
There's always room for improvement, but I feel like we got the foundation right. It's something that we can continuously build from.
– Ryan Cramer
What's new in ProcessWire 3.0.111?
As explained above, with ProcessWire 3.0.111 the focus has been mainly on refactoring parts of the core that had some redundancies, such as pieces of code that were more or less duplicated throughout the codebase. As a result 3.0.111 includes a total of three brand new core classes:
- PagesNames, made available for API use via the
$pages->names()function, encapsulates various page name related features – such as
$pages->names()->uniquePageName('some-name'), which is used to make the given page name unique either globally or within specific parent page.
- PagesTrash encapsulates the trashing, restoring, and trash emptying capabilities made accessible via the $pages API variable and the Admin GUI.
- WireRandom provides a number methods for creating cryptographically secure randomized content: passwords, integers, text, item from an array, and so on.
Don't forget to check out Ryan's weekly blog post for more details about his approach for developing the ProcessWire core, an in-depth introduction for the new core classes, and a bunch of ready to use code samples for the WireRandom class. Thanks!
New site profile: Milligram
Milligram is a recently released site profile for ProcessWire. According to the author of the Milligram site profile, rafaoski, it is mainly intended for simple blog or business card type websites. The site profile actually comes in two variations: one for the "basic" version, and another for the "blog" version.
Milligram requires ProcessWire 3.0.101 (or later) and makes use of various built-in features of ProcessWire, such as Markup Regions, Functions API, and the
wireRenderFile() methods. The profile also comes with built-in support for the Webpack wrapper tool/library Laravel Mix, although some additional installation steps are required if you want to go with it.
If you'd like to preview this site profile before installing, feel free to visit the live demo. The site profile is available via the modules directory, or you can download or clone it directly from GitHub (basic version or the blog version).
Big thanks to rafaoski for sharing his work with us – Milligram is an interesting addition to our list of available site profiles!
Site of the week: Centura
Our latest site of the week belongs to Centura, one of the largest distributors of floor and wall coverings in Canada. According to the About Centura page on the site, Centura was founded over 80 years ago, and their mission is to provide the best possible selection and quality when it comes to floor and wall coverings.
In addition to the products area – which, by the way, includes a pretty neat filtering feature for finding just the right product – this site includes a portfolio of completed projects, inspirational gallery, promotional ezines (in PDF format), and a retailer search feature. Various frontend features and site layout are based on the Uikit frontend framework, the site is obviously responsive, and connections are secured by an SSL certificate from GoDaddy.
According to the sites directory the website consists (among other things) of seven administrative regions with different prices, four user profiles with different privileges, daily synchronization with an inventory system, and an ElasticSearch search. Speed was a major area of focus on this project, and though it's already publicly available, it is described as a "soft launch", and more features are yet to be added.
Our congratulations to the client, Centura, for this marvelous website. Big thanks for the folks at Spiria for both sharing this site with us and choosing ProcessWire as your platform of choice!
Stay tuned for our next issue
That's it for the 224th issue of ProcessWire Weekly. We'll be back with more news, updates, and content Saturday, 1st 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!