Introduction
Craft 3.4 is official, securing Craft CMS, category query gymnastics, plugins, and more.
Welcome to another issue of Craft Link List. Since the previous issue, both Craft 3.4 and Commerce 3 are now the official releases. There are links on securing Craft, querying entires by categories, and more. I also enjoyed the typography link that kicks off the “It’s not Craft” section.
Thank you to the sponsors of this issue.
Fortrabbit is a preferred hosting provider for Craft CMS, offering a modern PHP application platform tailored for Craft, with Git deployments and Composer support. Try fortrabbit today >
Solspace is growing and is hiring a full-time developer. Are you the one? Start the new decade with a new job!
Let's hit the links.
-John Morton
Top Stories
Craft 3.4 is Here!
Craft 3.4 brings improvements across the board, from user experience to the GraphQL API, to the project config. It's made at least one person sad but the reaction has been very positive overall. The updated control panel design is getting good feedback in particular.
Commerce 3 is Here!
You can see all the details of what’s new in Commerce 3 in the changelog, which shows Commerce is already at version 3.0.5.
Featured Sponsor

Craft CMS Hosting Partner
We like to automate ALL THE THINGS — except customer support.
Get started with a free trial today! And ask whenever you have any questions.
Tools, tips, and fundamentals
Setting Up AWS S3 Buckets + CloudFront CDN for Assets
Using a cloud storage system like AWS S3 with a CDN distribution can be a convenient and inexpensive way to store your assets. Andrew shows how to set it up.
Setting up Craft CMS locally with MAMP and Composer
Ross Dallaire outlines the local dev process with MAMP.
craftcms.pl - A Polish Craft CMS resource
Piotr Pogorzelski, whom you might know from Craft Snippets, has launched a Polish site for Craft CMS. Now Polish speakers have a native-language destination for getting to know Craft. Congrats on the launch!
How do you teach Craft to new employees?
Piotr posted this question on Twitter. There are some replies, but the world awaits your answer as well. Tweet away.
CSS Grid Generator by Layoutit
Another grid generator has entered the ring. This webapp isn’t to be confused with Sarah Edo’s grid generator mentioned in issue 89.
Perfecting your technique
Securing Craft: How to survive a penetration test
Steve Rowling gave a presentation on Securing Craft at the London Craft CMS Meetup on January 28, 2020. This link is to the slides from the presentation.
How To Query Craft Entries Based On Multiple Category Relations
Mitchell Kimbrough (yeah, that guy you know from Solspace) goes into detail on conjoined category searching. 🤸
Enhancing Performance in Craft with Redis
Ryan and Andrew continue the theme of performance improvements. This time they look at moving sessions to Redis and how you can do that on Craft CMS. (For CraftQuest subscribers only.)
Install Imagick 3.4.3 on PHP 7.3 server (Laravel Forge)
Laravel Forge users don’t get Imagick installed by default, but this recipe will help fix that. If you’re on Server Pilot, this link mentioned back in Issue 35 might be of interest because it includes this link on installing Imagick on SP.
Sponsor

Now Hiring: Software Plugin Developer
The Solspace team is expanding! If you’re looking for an exciting full-time position working on Freeform and Calendar plugins for Craft and more, we’d love to hear from you! Check out our job listing for more details.
Plugged In
QBank Connector
QBank is a smart Digital Asset Management, aka DAM, that stores, manages and publishes your digital assets. This connector plugin will allow you to download assets and report usage of said assets in Craft for more effective workflow.
Venveo Bulk Edit
The Bulk Edit plugin adds an action to supported element index pages that allows you to edit fields on a large number of elements at once.
Sidebar Shortcuts
This plugin adds the ability to add simple shortcut-links to the sidebar in the control panel of Craft CMS.
Froala WYSIWYG Editor v3
The implementation of the Froala Editor (license not included) for Craft CMS 3.x.
Craft Reporter
Monitor and get status reports of your Craft CMS sites. The plugin works in conjunction with the craft.report service, which is now in Beta.
Brandfetch
This unofficial Brandfetch Plugin utilizes the API of brandfetch.io to call and save logos from just about any URL.
Craft CMS 3.x Redirect Manager
Craft plugin that provides an easy way to enter and maintain 301 and 302 redirects. The plugin provides a clear user interface for admin and non-admin users.
Poll
With this plugin, you can easily create polls in Craft without the need of an external service.
Craft Color Mixer
Use Twig to modify and manipulate color values and generate valid CSS that can be used in your templates.
Craft Asset Versioner
Automatically generate unique hashed versions of static files and assets for efficient and reliable browser caching.
autop Twig Filter
The autop plugin adds a Twig filter that strips HTML and generates <p>
and <br>
tags from newlines.
Useful when you want to implement simple formatting using the Plain Text field.
The Craft Advantage
Yii, Twig, PHP & More
PHP in 2020
In this post, I want to look at this bright side of PHP development. I want to show you that, despite its many shortcomings, PHP is a worthwhile language to learn. I want you to know that the PHP 5 era is coming to an end. That, if you want to, you can write modern and clean PHP code, and leave behind much of the mess it was 10 years ago.
It’s not Craft, but it’s interesting.
A Five-Minute Guide to Better Typography ⭐️
This is a beautifully designed post on creating better typography.
IBM Plex font
Another "coding" typeface. This time from IBM. You can download it from the Github page for the project.
Want to know every device that's on your network subnet?
Andrew shared a tip for listing the devices on your local network.
Mirage JS • An API mocking library for frontend developers
Mirage JS is an API mocking library that lets you build, test, and share a complete working JavaScript application without having to rely on any backend services.
Prettier Plugin Twig-Melody
Code formatting plugin for Prettier which can handle Twig/Melody templates.
Alpine JS
Alpine.js offers you the reactive and declarative nature of big frameworks like Vue or React at a much lower cost.
You get to keep your DOM, and sprinkle in behavior as you see fit.
Think of it as Tailwind for JavaScript.
Amazon's accidental email template
Amazon accidentally sent out an email template. But it wasn’t blank. It included some handy copywriting tips, set-out as placeholder text.
Learn Vue 2: Step By Step: Single-Use Components and Inline Templates
This handy video on inline Vue templates was shared in the Craft Discord.