ProcessWire Weekly #46

46th issue of ProcessWire Weekly brings in all the latest news from the ProcessWire community. Modules, sites and discussions. Read on!

This time we're going to start by diving into the latest core updates, provide some general tips and hopefully helpful guidelines for eager ProcessWire contributors, introduce a new module and another, rather neat new command-line tool, and finally close the issue by taking a closer look at some of the forum highlights and introducing a brand new site of the week.

That's a lot to chew, so better grab a cup of coffee, sit back, and relax. As always, if there's anything we've missed or misinterpreted, please let us know via the feedback form. We're always looking for cool projects and topics to cover too, so let us know if you'll find one!

Now, without any further delays, let's get this thing started!

ProcessWire core updates (2.5.24): field dependencies, performance, and more!

When it comes to the core updates this week, the theme has definitely been "contributions". Just as explained by Ryan in his latest blog post, this week we've got a bunch of updates, many of which originated from our contributors:

  • Native support for minified JavaScript and CSS files for modules and the core. From now on each module can provide additional ModuleName.min.js and ModuleName.min.css files, which will be automatically loaded when appropriate.
  • Thanks to a pull request from LostKobrakai and some additional work by Ryan field dependencies now supports OR-selectors. In addition to field=value, you can use field=value1|value2 or field1|field2=value just as well.
  • As a result of a pull request by awt2542, you can now hold down the ⇧ Shift key to select a range of checkboxes in both Admin tables and multi-checkbox inputfields.
  • Modal windows provided natively by ProcessWire are now even more configurable, with options ranging from "draggable" to "closeOnEscape". Take a look at this commit to the config.php file for more details.
  • The users dropdown menu has been upgraded to support sites with a lot of users. If more than 50 users are found (configurable via ProcessUser.module settings), instead of a list of users a list of roles will be displayed.

Special thanks to all our core contributors this week – your input is very much appreciated!

So, how do I contribute to ProcessWire?

Overall it's always great to see more contributors stepping in. Many of the features we've got now started out as feature requests, and we're lucky to have a community that really cares for ProcessWire and it's future.

For anyone else out there interested in contributing to ProcessWire, it's quite simple, really:

  • If you're a developer and prefer to commit code, just fork us on GitHub and send a pull request. While all pull requests are evaluated by Ryan, mainly for the sake of consistency and quality assurance, this is perhaps the most effective way to showcase new ideas.
  • Anyone can help by reporting potential bugs via GitHub. You do not have to provide a solution (unless you can and want to), but we'd like to encourage you to provide as clear steps as possible for reproducing the issue on a clean install of ProcessWire.
  • All kinds of suggestions and feature requests are welcome via the Wishlist & Roadmap thread. There are no bad ideas, and while we do have to consider carefully what gets into the core, less common needs are often picked by module authors, and thus might result in a very neat third party module.
  • Not everyone has to contribute code or submit issues. You can also help by answering questions on our support forum; we're a friendly community, and our support is mainly driven by enthusiastic users helping each other!

Additionally the ProcessWire ecosystem is full of wonderful modules, and we're always happy to have more. If you've got an idea for a module of your own, feel free to flesh it out into a full-blown module, or just throw it as a suggestion into the forums.

If your idea touches one of the existing modules, don't hesitate to contribute for them either – most module authors would be thrilled to see passionate users offering to help!

Restrict Tab View: control the visibility of Page Edit tabs on a role-by-role basis

Restrict Tab View is a brand new module by adrian. This module introduces a small yet rather meaningful addition: an easy-to-use combination of a GUI and a couple of permissions for controlling visible Page Edit tabs on a role-by-role basis.

Affected tabs are first selected via a GUI and the visibility is controlled by applying specific permissions to roles. That's actually just about all there is to say here; this is a rather simple module, but has a lot of potential use cases.

Please note that this module requires ProcessWire 2.5.16, which currently means the dev branch of ProcessWire. Anyway, thanks to adrian for another really useful addition to our collective toolboxes!

Wireshell, an extendable command-line companion for ProcessWire

Built by Marcus Herrmann and modestly described as an "experimental niche tool", Wireshell is a command-line tool for automating and streamlining various, common ProcessWire-related tasks.

From installing the system to creating users and adding roles, this is already a really easy-to-use tool for quickly setting up your environment, and has a lot of potential for expansion.

As explained in the post introducing this tool, it's strongly influenced by Artisan for Laravel and Drush for Drupal, and in a way attempts to bring similar features to the context of our beloved ProcessWire. Either way, this looks like a tremendously useful tool, especially for us who prefer working with the command-line.

Thanks to Marcus for sharing this – we're eagerly looking forward to seeing this project evolve!

Recent support forum highlights

It's been a while since we last included a "forum highlights" section in the weekly issues, so here we go again; a short list of some of the recent topics from the ProcessWire support forum, in no particular order:

  • So, you're building a site with millions of pages with ProcessWire? No biggie!
  • Apparently net magazine is running a CMS poll, and while we're not included in the pre-defined options, there's always the "other" choice. If you're a ProcessWire user, this is one of those times when your voice matters. #VoteForProcessWire!
  •, the ProcessWire-powered site offering free high resolution photos under a creative commons zero license, has just recently been relaunched. Check it out if you're looking for photos or would like to contribute!
  • There's a new community-driven developer documentation initiative, and it's already looking pretty swell. Feel free to hop in, fresh ideas are always welcome!
  • The future of hooks is both a feature request and an interesting look into ProcessWire's inner workings. Complete with Ryan's quite in-depth explanation of some of the key points of current architecture (and how exactly it got the way it is now) this is a must-read thread for those interested in ProcessWire's core-level features.

Last but not least, while a keen-eyed observer might spot a rather curious X-Clacks-Overhead: GNU Terry Pratchett header on some ProcessWire sites out there, this isn't the latest update to ProcessWire itself. It's a tribute for the late Sir Terry Pratchett, the author best known for the Discworld series – may his name live on forever in the Overhead.

Site of the week: portfolio of Helder Cervantes, Digital Creative Director

As far as portfolio sites go, the portfolio site of Helder Cervantes, the Digital Creative Director at YAP_Technology in Portugal, is quite a splendid one, to say the least.

The site looks great, works great on various devices, and definitely does a very good job at conveying a message. Apparently it was also a great fit for ProcessWire – here's how the author himself described the process of building a site with ProcessWire:

I have to say that working with ProcessWire was nothing short of spectacular. I'm mainly a frontend guy, and the API's simplicity is just perfect for me. Got the site running using only php echos and foreach statements, literally coding it amidst conversations with friends and half looking at my screen. So simple and logic. (source)

Portfolio sites are a great way to both showcase one's expertise and let loose with all the fancy features one can dream up. We haven't been featuring too many of these so far, but perhaps we should – they do undeniably make pretty awesome "site of the week" entries.

Thanks to Helder Cervantes for sharing this with us. It's always great to have talented folks around, and we hope you enjoy working with ProcessWire in the future too!

Stay tuned for our next issue

That's it for the 46th issue of ProcessWire Weekly. We'll be back with more news, updates, and content next Saturday, 4th of April. 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:

diogo on Saturday 28th of March 2015 17:48 pm

Teppo, Helder's name is written in Spanish in the title. You may want to change that ;)

Post a comment