🏗️ Theme Architecture
Layouts
-
What is a layout?
-
What types of layouts do you know, and how are they used?
-
What are
content_for_headerandcontent_for_layout, and what content do they load?
Templates
-
What do you know about Shopify templates?
-
What types of templates exist in Shopify?
-
What’s the difference between JSON and Liquid templates?
-
Where is the data from the JSON and Liquid templates stored?
-
How many templates can a theme contain?
-
What do you know about the
gift_cardtemplate? -
What are alternate templates, and how do they work?
-
How many sections can a JSON template include?
-
How can you add a wrapper to a JSON template (using a
<article>tag) with the class “custom-template”?
Sections
-
What is your understanding of sections?
-
What is required for a section to be added to a JSON template via Shopify theme customizer?
-
What types of inputs can be integrated through a section schema
- Where can a list of available inputs be found?
-
What do you know about
section.id,block.id, andblock.typein Liquid?-
What data do they represent?
-
Provide an example of how to use these in section building.
-
-
What is the default wrapper tag for a section?
- How to change the wrapper tag type?
-
What attributes does the default section wrapper tag have?
-
How can a custom class be assigned to a section wrapper?
-
How can a block limit be set within a section?
-
How many blocks can a section have?
-
What is a section group, and what is it used for?
-
How can a merchant be limited to adding only one instance of a section per template?
Snippets
-
What is a “snippet” in a Shopify theme, and how is it structured within the theme architecture?
-
What are common uses or applications of snippets in Shopify themes
- Provide examples of scenarios where snippets are particularly beneficial.
-
What are the two primary methods for rendering a snippet in a Shopify theme?
- Describe the differences between them.
-
How can you create a snippet that accepts parameters from a parent element?
- Provide an example of defining and passing parameters to a snippet in a Shopify theme.
Config
-
What are
settings_schema.jsonandsettings_data.json? -
Give an example of how to use
settings_schema.json
Locales
-
How do locale files work in a Shopify theme?
-
How can Liquid render variables based on the store’s locale file?
-
How can block titles on the checkout page be customized for different locales?
Cart
-
What is a cart line item?
-
How can a link be created to remove all quantities of a single line item using Liquid?
-
How can a link be created to set the quantity of a single line item to 5 using Liquid?
-
What are cart notes and cart attributes?
- What data can be stored there, and how is it represented in the admin panel?
-
What are line item properties, and what is the difference between line item properties and cart attributes?
Collection
-
How does product filtering and sorting work in collections?
-
How can a collection page with filtering and sorting be retrieved using JavaScript?
-
What do you know about pagination on collection pages?
- What are its limitations?
-
How can you retrieve a collection object using a JavaScript fetch request?
Products
-
How can you retrieve a product object using a JavaScript fetch request?
-
What is the difference between a product ID and a variant ID?
-
What are “Dynamic checkout buttons”?
-
How do product recommendation algorithms work?
-
What are product type, vendor, and tag?
- Give examples of how they can be used.
Discounts
-
What types of discounts are available in Shopify?
-
How can you create custom discount types?
-
What are Shopify Scripts and Shopify Functions for discounts? What is the difference between them?
-
What are
discount_applicationanddiscount_allocationobjects? What are their uses?
Customer
-
What data is represented in a customer account?
-
Is it possible to collect additional customer information during the registration flow?
Blogging
-
What is an article template, and how is it used in themes?
-
How can readers add comments to an article?
-
Where is a blog template used?
-
Can you create different blog listing pages for different topics?
-
How can articles be filtered on a blog page?
Gift Card
-
How does the gift card feature work in Shopify?
-
Is it possible to use JSON templates for gift card pages?
Notifications
-
How do you set up a newsletter sign-up form?
-
How can you automatically subscribe users to a newsletter when they create an account?
-
Where can you adjust email templates for customers?
Additional Topics
-
Is it possible to disable reCAPTCHA in a store?
-
How can this be done
-
When might it be useful?
-
-
What feature does Shopify offer for generating QR codes?
-
How can you add a custom tag to a user when they sign up using the default email sign-up form?
-
What is “Dawn” and why should merchants consider using it?
-
What is the “Shopify selling plan”?
-
If a client asks you to migrate their store to Online Store 2.0, what does this migration involve?
-
What is
shopify_asset_url? -
What is “design mode” in the context of Shopify?
-
Provide an example of how design mode can be used.
-
How can you detect design mode using a Liquid?
-
Can you detect design mode using JavaScript?
-
How can a detection of adding a new section in the Customizer be triggered to run JavaScript scripts?
-
How can JavaScript detect section reordering in the Customizer?
-