Book Image

Modernizing Enterprise CMS Using Pimcore

By : Daniele Fontani, Marco Guiducci, Francesco Minà
Book Image

Modernizing Enterprise CMS Using Pimcore

By: Daniele Fontani, Marco Guiducci, Francesco Minà

Overview of this book

Used by over eighty thousand companies worldwide, Pimcore is the leading open source enterprise-level content management system (CMS) solution. It is an impressive alternative to conventional CMSes and is ideal for creating e-commerce and complex enterprise websites. This book helps developers working with standard CMSes such as WordPress and Drupal to use their knowledge of CMSes to learn Pimcore CMS in a practical way. You'll start by learning what Pimcore is and explore its various services such as PIM, MDM, and DAM. The book then shows you various techniques for developing custom websites in Pimcore based on the scale of your organization. You'll learn how to use Pimcore to improve the digital transformation of a company by implementing enterprise Pimcore features. As you advance, you'll discover Pimcore's capabilities and features that make it a faster and more secure alternative to traditional CMSes. As well as demonstrating practical use cases, Modernizing Enterprise CMS Using Pimcore can help you understand the benefits of using Pimcore as a CMS solution, sharing best practices and proven techniques for designing professional Pimcore sites. By the end of this book, you'll be a trained Pimcore developer, able to create complex websites, and be well-versed in Pimcore's enterprise features such as MDM, PIM, and DAM.
Table of Contents (16 chapters)

Routing

Routing is a key part of setting up our blog and was discussed in detail in the previous chapter, Chapter 8, Creating Custom CMS Pages. We will therefore go on to create hardcoded routes, going directly to the routing.yml file to modify this.

Let's create a set of rules that are needed in order to identify articles, categories, and author pages. In addition, we want pages to be accessed by using either our ID or our slug.

As an example, we report the two routing rules related to the article, in this following piece of code:

blog_article_by_id:
    path:      /blog/article/{page}
    controller: BlogBundle\Controller\BlogController:articleAction
    requirements:
      path: '.*?'
      page'\d+'
blog_article_by_slug:
    path:      ...