Liquid Weekly #31 - Using Shopify CLI for continuous integration

Did you know that Shopify now has built in support for CI workflows? 
Shopify Development news and articles
 
Liquid Weekly

Karl Says


I'm currently enjoying "second winter" here in central Ohio. An early Merry Christmas to you all!

News & Articles

Shopify Store 2.0 Storefront Filters Explained
Filters on the Collection and Search page of the Shopify theme are very important. In this video I will explain how they work in simple terms.
Recording & Links for Post-purchase strategies to boost your AOV
A post-purchase offer is just as it sounds. After your customer completes the purchase online, you can show them additional products. Think of it like candy at the checkout counter. They may have completed their purchase, but since they are here, why not add something else to their order before they leave.
Dawn product page link/popup for only certain products
Dawn has a product information section block called "Pop-up" that we could extend to provide the same base functionality. It already lets you provide text that is used as a link which triggers a pop-up and the contents of that pop-up can come from a page record or metafield. The main thing missing is the ability to conditionally show this for only certain products.
Turbo Rails Tutorial
Learn how to leverage the power of the turbo-rails library now included by default in Rails 7 to write reactive single-page applications without having to write a single line of custom JavaScript.
Spent weeks on auth, again? Building yet another full text search?

WELL DON'T. Let Gadget's instant APIs and built-in state machines do the busywork, so that you can focus your time on writing the code that matters. Build and scale apps in a fraction of the time it takes today by skipping the boilerplate.

Try it for free, today

Code & Tools

The Code Review Pyramid
When it comes to code reviews, it’s a common phenomenon that there is much focus and long-winded discussions around mundane aspects like code formatting and style, whereas important aspects (does the code change do what it is supposed to do, is it performant, is it backwards-compatible for existing clients, and many others) tend to get less attention.
Build a referral program for your client and earn $100
Conjured Referrals is an app built by devs, for devs. That's why we want to reward devs for recommending us to their clients. Install the app free on any development store, and check out the top 3 ways using Conjured Referrals will make you look good in the eyes of your clients.
Customizable Announcement Bar - Part 1
Today we will be coding a customizable announcement bar for our Shopify store. Whether you want to create this for yourself or for a client, learning how to navigate Shopify's backend is a valuable skill to have!
Using Shopify CLI for continuous integration
In this tutorial, you'll learn how to set up your CI/CD pipeline to push your scripts and app extensions programmatically. To do so, you'll gather the information necessary to run the CLI commands programmatically, and then add a step to your CI/CD pipeline that installs the Shopify CLI and pushes your app extension or script to Shopify.
Cut your Rails boot times on Heroku in half with a single command
The bootsnap gem has been a default Rails gem since version 5.2 which was released back in 2018 and has been improving boot times in most environments ever since. But what about on Heroku?

Changelog

API

Changes to metafield definition error codes
As of GraphQL Admin API version 2022-04, an error returns when a metafield definition is created with invalid characters in either the key or the namespace fields. The key and namespace fields can contain only alphanumeric characters, hyphens, and underscores.

Themes

New theme editor setting types: product list and collection list
Two new input setting types have been added to the theme editor: product_list and collection_list. They allow merchants to quickly create curated, ordered and paginatable lists of products and collections. Learn more about product_list and collection_list on shopify.dev.

Tools

CI/CD support for scripts, extensions
Developers can now programmatically push their scripts and extensions to Shopify from their CI/CD pipelines with CLI authentication tokens. For more information on how to set up CI/CD for your scripts and extensions, visit our developer documentation.

Events

March 29th - More organic traffic without fighting for rankings
Let's bring more qualified buyers to your Shopify store using the free search enhancement systems Google, Bing, Pinterest, and other search engines. After this presentation, you’ll understand: - What search enhancements are - How your store can qualify for them - Warning signs that something could be wrong (and what to ignore) - How to solve common search enhancement problems
April 13 - Introduction to Working With Shopify Themes
Following this practical workshop you’ll be able to set up a local development environment and edit theme code to customize an example storefront. We’ll also explore Shopify’s Liquid templating language and learn how it can be leveraged to display dynamic store content.

Jobs

Shopify - Lead/Staff Production Engineer (Remote, Americas and Europe)
If the idea of working on one of the most impactful component of infrastructure that has a reach to every single application (hundreds of them) across our infrastructure, serving millions of requests per minute excites you, join us!
Content Marketing Manager, FT, Remote
The ideal candidate loves writing and topic research but also understands how to structure the article from the SEO point of view. We expect someone who will be autonomous and data-driven. Knowledge of the Shopify environment is a big plus, but general e-commerce understanding is fine, too.
Technical Lead, FT, Remote
Invisible Themes is looking for a full-time Technical Lead with deep Javascript knowledge to join our growing team! You will be building features, writing exemplary code for the development team to follow and defining the development roadmap.

Tip of the Week

Dynamic Variable Assignment

Hopefully you know that you can assign and use variables in liquid (if not, we need to talk..)

But what about situations where you need to dynamically create the variable name?

For example, what if you have five metafields to represent carousel slide data and want to loop through them?

It's possible - with the clever use of the append tag


Example

﹛% for i in (1..5) %﹜

﹛% assign objectName = ‘image_carousel_slide_’ | append:i %﹜

﹛% if collection.metafields.my_fields[objectName] != blank %﹜

image carousel slide has content

﹛% endif %﹜

﹛% endfor %﹜


Thanks to Mathews Joseph for the excellent tip!

 

Older messages

Liquid Weekly #30 - Achieve Maximum Performance with Laziness

Tuesday, March 22, 2022

Achieve Maximum Performance with Laziness Shopify Development news and articles Issue #30 - 3/22/2022 Read Online Liquid Weekly Karl Says Sometimes being lazy is good - at least for improving theme

Liquid Weekly #29 - Don't Lose Your App Store Listing, Ditch EASDK!

Tuesday, March 15, 2022

Don't Lose your Apps Store Listing - Switch From EASDK To App Bridge! Shopify Development news and articles Issue #29 - 3/15/2022 Read Online Liquid Weekly Karl Says Lots of great content this week

Liquid Weekly #28 - Dawn Theme Transparent Header

Tuesday, March 8, 2022

Learn How to Add a Transparent Header to Dawn Shopify Development news and articles Issue #28 - 3/8/2022 Read Online Liquid Weekly Karl Says Got any plans for Spring Break 2022? What's one new

Liquid Weekly #27 - How Shopify Writes React Native Apps

Tuesday, March 1, 2022

Learn how Shopify Writes React Native Apps Shopify Development news and articles Issue #27 - 3/1/2022 Read Online Liquid Weekly Karl Says Spring is right around the corner. How can you help your

Liquid Weekly #26 - Accessibility on Shopify

Tuesday, February 22, 2022

How to Get Started with Accessibility on Shopify Shopify Development news and articles Issue #26 - 2/22/2022 Read Online Liquid Weekly Karl Says Each winter after Christmas I make it a mental goal to

You Might Also Like

📧 Introduction to Distributed Tracing With OpenTelemetry in .NET

Saturday, April 20, 2024

​ Introduction to Distributed Tracing With OpenTelemetry in .NET Read on: m​y website / Read time: 5 minutes BROUGHT TO YOU BY ​ Shesha: The .NET Open-Source Low-Code Framework ​ Introducing Shesha, a

a16z’s Infrastructure team gets a new general partner

Friday, April 19, 2024

Post News is shutting down and Wall Street isn't feeling a Salesforce-Informatica pairing View this email online in your browser By Christine Hall Friday, April 19, 2024 Image Credits: Andreessen

New Roundtable! Additive for Mass Production Applications

Friday, April 19, 2024

The Outlook for the Future View this email in your browser engineering.com Roundtable - Additive for Mass Production Applications: The Outlook for the Future 6 Considerations for Choosing the Right

📷 What to Know About Macro Photography — Why You Should Buy a Budget Motherboard

Friday, April 19, 2024

Also: How to Automatically Highlight Values in Excel, and More! How-To Geek Logo April 19, 2024 📩 Get expert reviews, the hottest deals, how-to's, breaking news, and more delivered directly to your

Is the wind going out of the AI sails?

Friday, April 19, 2024

Rippling vacuums up venture capital and Ramp bags more millions View this email online in your browser By Haje Jan Kamps Friday, April 19, 2024 Image Credits: Getty Images / Carol Yepes Welcome to

Llama 3 is out - Weekly News Roundup - Issue #463

Friday, April 19, 2024

Plus: brand-new, all-electric Atlas; AI Index Report 2024; Microsoft pitched GenAI tools to US military; Humane AI Pin reviews are in; debunking Devin; and more! ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

Daily Coding Problem: Problem #1417 [Easy]

Friday, April 19, 2024

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Wayfair. You are given a 2 x N board, and instructed to completely cover the board with

Charted | How Hard Is It to Get Into an Ivy League School? 🎓

Friday, April 19, 2024

We detail the admission rates and average annual cost for Ivy League schools, as well as the median SAT scores required to be accepted. View Online | Subscribe Presented by: Discover the motivations

Dark Matter & Tortured Poets

Friday, April 19, 2024

New music releases aren't what they used to be -- for good and bad. Dark Matter & Tortured Poets By MG Siegler • 19 Apr 2024 View in browser View in browser New music releases in 2024 are a

Impact of AI on Product Management

Friday, April 19, 2024

​ Impact of AI on Product Management The rise of the AI Product Manager. Product managers have always championed customer's needs. However, with AI, the job requires new technical and ethical