Bolt structures all content in ContentTypes: a content type defines the structure of your website content, for instance News, Pages, Blog Posts, Testimonials and Sections are all examples of a ContentType.
What makes them so cool is how ridiculously easy it is to define them: all ContentTypes are defined in YAML format in the contenttypes.yaml file.
By adding the pages content type to your configuration, Bolt will:
Bolt is a Symfony application, and it shows in many ways. If you're familiar with Symfony, you'll immediately recognize the project structure and how things work. That's not limited to the core of Bolt itself, though. Projects you build on top of Bolt, as well as extensions for Bolt benefit from the Symfony underpinnings.
Getting a little more technical here, but… The beauty of Bolt being a Composer package is how easy it is to extend it. There’s literally no limit to what functionality you can add to Bolt, or on top of Bolt, as an extension. Write your code and easily create a Bolt extension from it. Bolt automatically makes your extension autoloaded and autowired, and you'll have all of Symfony's services available. You can even have your extension depend on other Composer packages to pull them into your project.
To read more about extending Bolt, read the documentation and check the extensions that already exist to get started.
By adding just one line to our content type, Bolt will make your pages translatable.
The even cooler thing? You have field-level control over what is translated and what is not. For example, the page heading can be translated, whilst the photo will stay the same across languages.
Want to see which fields are translated across languages and which not? No problem. Bolt’s got you covered.
At its core, Bolt is a Composer package. In addition, all of Bolt’s (and Symfony's) configuration is stored in its YAML configuration files.
This means Bolt is easy to deploy in different environments. You can most likely keep using your preferred deployment and release strategy when you start working with Bolt. Whether you prefer using a tool like Deployer, a small bash script to git pull, Composer install or old-fashioned FTP. Bolt doesn't enforce a specific workflow, but adapts to your preferences.
By default, the CMS comes with all the standard field types you’d expect, such as text, date, file, image, markdown, select and others.
In addition, Bolt supports natively the following field types:
What is a Twig template? See right below!
The flexible, fast and secure templating language Twig is the de-facto standard across the Symfony community and beyond. At the core of it is simplicity and security.
Take a look how easy it is to generate the HTML for your pages:
We saved the best for last: our open source community! Our Slack community has over 1,600 members doing the same thing as you do: building awesome websites. The community is a great place to get to know like-minded people, as well as get some help when needed. Head over to the community now and say hi :-)