Introduction
Craft CMS News, Plugins, Tips and More for June 2019
Welcome to another edition of Craft Link List.
We’ve got another issue of informative links on Craft and web development. Craft 3.2 alpha keeps marching forward. There’s a post about RacingNews365, a Craft site with more traffic than you can imagine. There are deep dives into the picture element, CSS, RegEx, and more. There are new plugins to check out too.
Do you have a link for a future issue? Visit the submit a link page.
Thank you to this issue's sponsors.
Fortrabbit is an official Craft CMS hosting partner. Check them out for hosting your next Craft site.
Freeform is the powerful and intuitive form plugin for Craft CMS from Solspace. Do you have a form to build? Make it with Freeform.
Let's hit the links.
-John Morton
News

Craft 3.1.28 released
3.1.28 now includes a user permission called Customize element sources. Non-admin users with this permission have the ability to show/hide certain table columns/sources.
Craft 3.2.0 Alpha 7
Craft 3.2 Alpha is speeding through development. Since the previous issue of the newsletter, the Added section of the changelog contains over 40 additions, including several new functions to the Craft
Javascript class.
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
How to add Disqus comments to Craft CMS website
Piotr Pogorzelski demonstrates how to set up Disqus comments on your Craft CMS website without the use of any plugins. If you've been following Piotr's posts on Craft Snippets, check out his collection of gists on Github.
Aprende Craft CMS - Creando un sitio web completo con blog!
Andre Lopez has released his full course for Craft 2 in Spanish for free. It's good to see non-English resources for Craft.
A Laravel Mix + Craft example file
This gist is an example webpack.mix.js
that demonstrates how Laravel Mix can be configured for Craft CMS development.
Perfecting your technique
This is how we upgraded the engine behind RacingNews365.
RacingNews365, a Craft CMS-powered site, had 17 million visitors in 2018 with spikes of traffic during races. How does a developer deal with that much success?
By rebuilding the caching structure from scratch and implementing some core changes, we have tackled major bottlenecks which would otherwise cause us headaches in the future.
devMode.fm // webpack inside & out with Sean Larkin
In this episode, we talk to webpack core maintainer Sean Larkin about what webpack is, who it’s intended for, and where it’s going in the future!
Craft Plugin Development In-Depth: Debugging and Troubleshooting
If you're a CraftQuest member, check out the latest entry in the plugin development course. If you don't need debugging or troubleshooting, feel free to skip this one. ;-)
Setting Up Email Sending in Craft CMS
Here is another link for CraftQuest members. A new course is kicking off on best practices for setting up the sending of transactional email in Craft CMS.
How to order or filter entries by their author's custom field
Ben Croker shares some expert manipulation of the ElementQuery.
Multiple Currency Setup in Craft Commerce with Sebastien Dehesdin
Stephen chats with Seb Dehesdin who came up with a clever multiple-currency setup solution in Craft Commerce for his client’s designer clothing e-commerce site.
Level Up with Craft CMS: Know When to Ditch Twig
...there are times when you can start to push your Twig code too far, and it would be much better suited for a custom Module.
Annotated JSON-LD Structured Data Examples
Andrew dives deeply into JSON-LD (i.e., JSON linked data) with examples from the SEOmatic plugin. Put on your thinking cap.
Many articles talk about Structured Data; this article is going to focus on real-world examples of using Structured Data “in the wild.”
How to set up an SEO-friendly Craft CMS website
It’s important your team follows some sort of SEO checklist when designing (or redesigning) your website, and in this article, we’ll discuss how easy Craft CMS makes that process.
Twig + Webpack
Derrick Grigg, a developer familiar with Craft and Twig, needed to build a static site but wanted to still benefit from his Twig knowledge. He shares his approach here.
"The benefit of this setup is that those templates are plug and play with a Twig-based CMS. When the time comes to add a CMS to mix, drop them into the project, make any small adjustments to reference the data being injected by the CMS... and you are good to go."
Sponsor

Effortlessly build beautiful forms in minutes with Freeform!
Freeform is the most reliable, intuitive and powerful form building plugin for Craft. Everything is at your fingertips in our elegant form builder. It gives you full control to create simple or complex multi-page forms, as well as connect your forms to many popular API integrations. Templating is easy and highly customizable. Our ready-to-go templates and features like built-in AJAX and Conditional Rules Logic will have you ready in minutes! No other form plugin even comes close to comparing! You can trust Freeform (and the team behind it) to deliver the quality and support you expect and deserve.
Plugged In
Chunked File Uploads
This plugin enables chunked file uploads in the control panel. It allows users to upload files larger than the file-upload-limit given by your web server.
Macro Kit
Macro Kit provides several functions that can be imported into your front-end templates for use in Craft CMS.
Back In Stock
The Back In Stock plugin allows anyone to register interest in out-of-stock products. When the product comes back in stock an email will automatically be sent to all interested users via email with a link prompting them to buy now.
SearchExcerpt
The SearchExcerpt plugin finds a given search term in returned text and highlights it. The text is shortened to 20 (changeable) characters before and after the highlight. If text is truncated an ellipsis (…) is added. Ideal to use in a search result template.
Conditions
Conditions is a plugin that allows you to show and hide fields within entries. This can be used with SuperTable.
The Craft Advantage
Craft Commerce Vs. Magento and WooCommerce
There are a wide variety of e-commerce solutions available in the market and which one is best for a client is dependent on the specific needs of the project and the long term growth strategy of the business.
Why we are moving to Craft CMS – Roller-agency – Medium
Here at Roller, we have decided to move away from Wordpress and head towards Craft CMS, as our ‘go to’ Content Management System.
Setting alternative base URL of pagination · Issue #4286
Why is a Github issue in The Craft Advantage section? Piotr Pogorzelski, the person behind Craft Snippets, had a new feature request and it made it into Craft within 24 hours. Impressive.
Yii, Twig, PHP & More
New in PHP 7.4
This post gives a preview of what you can expect in the next major release of PHP, version 7.4, expected to be released in December 2019.
It’s not Craft, but it’s interesting.
The CSS background-image property as an anti-pattern ⭐️
Andrew explains how background-images no longer have to be hacked to get the results you want, now that the picture
element with object-fit
is widely supported.
Unraveling The JPEG
JPEG images are everywhere in our digital lives but behind the veil of familiarity lie algorithms that remove details that are imperceptible to the human eye. This produces the highest visual quality with the smallest file size—but what does that look like under the hood? Read this post for details.
CSS { In Real Life } | Debugging CSS Grid – Part 1: Understanding Implicit Tracks
CSS Grid got you down? Part 1 of this series discusses implicit tracks in grid layouts.
The biggest issue I’ve seen people struggle with is accidentally creating extra grid tracks, which can throw an entire layout into disarray. These extra tracks are known as implicit tracks, and they are created by placing an item outside of the explicit grid’s boundary.
CSS { In Real Life } | Debugging CSS Grid – Part 2: What the Fr(action)?
Part 2 of this series on understanding the fr
unit.
tiptap
A renderless rich-text editor for Vue.js. What does renderless mean? You can save your data as a raw HTML string or can get a JSON-serializable representation of your document.
Google Fonts is Adding font-display ⭐️
Developers now have more control over Google Fonts web font loading behavior. display=swap
is now used by default when you copy and paste code from the Google Fonts site.
National Park Typeface
A typeface designed to mimic the national park service signs that are carved using a router bit. Available in 4 weights.
Command Line/Terminal basics video series
The command line/terminal basics series gives an overview of how to use the command line/terminal in Linux – and specifically on a macOS.
Flexbugs
This repository is a community-curated list of flexbox issues and cross-browser workarounds for them. The goal of this project is that if you're building a website using flexbox and something isn't working as you'd expect, you can find the solution here.
Tanker Encryption SDK for JavaScript
Tanker is an open-source client SDK that can be embedded in any application. It leverages powerful client-side encryption of any type of data, textual or binary, but without performance loss and assuring a seamless end-user experience.
Fork - a fast and friendly git client for Mac and Windows
Git tools come up fairly regularly in Craft Discord discussions. This is a Git client recently mentioned that I'd not heard of previously.