Book Image

Mastering Adobe Commerce Frontend

By : Jakub Winkler
Book Image

Mastering Adobe Commerce Frontend

By: Jakub Winkler

Overview of this book

Navigating the frontend realm of the Adobe Commerce platform can often feel like a labyrinth, given its multifaceted systems and intricate layering. This book demystifies Adobe Commerce frontend development, guiding you through its paths with clarity and precision. You'll learn how to set up your local environment, paving the way for a smooth development experience and navigate the platform's theming ecosystem, exploring layout XML systems and the power of templates. As you progress through the book, you'll leverage an array of JavaScript libraries and frameworks that Adobe Commerce boasts of, with special emphasis on RequireJS, jQuery, Knockout.JS, and UI Components. Additionally, you'll gain an understanding of the intricacies of Adobe Commerce CMS, explore frontend-related configurations in the admin panel, and unlock the secrets of frontend optimization. Practical exercises provided in the book will enable you to create top-notch Adobe Commerce sites that are functional, optimized, user-centric, and a step ahead in the ever-evolving frontend landscape.
Table of Contents (18 chapters)

Layouts and pages

So far, I’ve only described the main terms and role of the layout XML files in preparing the structure of all pages. AC has many working URLs (from many modules) in the system. Here are some examples:

  • Registration page
  • Catalog pages (products and categories)
  • Customer order history page
  • CMS pages
  • Cart page

Each page that’s rendered by the framework is related to a specified module and action that’s performed by the specific controller in that module. The preceding list can be matched to the following modules:

  • Magento_Customer:
    • Registration page
    • Customer order history page
  • Magento_Catalog:
    • Product view page
    • Category view page
  • Magento_Cms:
    • CMS pages
  • Magento_Checkout:
    • Cart page

All these pages have unique layouts, but they also share common elements, which mainly come from the default.xml file. So, how is this layout constructed, and how is the HTML structure being determined? This takes place during...