SuluArticleBundle
The SuluArticleBundle integrates a performance optimized way for managing articles in the Sulu content management system. In the context of this bundle, articles are localized content-rich entities that are manageable via the Sulu administration interface and can be rendered on a website delivered by Sulu. This makes them a good choice for managing things like blog posts, products or even recipes in a Sulu project. In order to keep things clean, the bundle allows to manage different types of articles via separated lists in the administration interface.
The SuluArticleBundle is compatible with Sulu starting from version 2.0. Have a look at the require
section in
the composer.json to find an
up-to-date list of the requirements of the bundle.
🚀 Installation and Documentation
Execute the following composer command to add the bundle to the dependencies of your project:
composer require sulu/article-bundle
Afterwards, visit the bundle documentation to find out how to set up and configure the SuluArticleBundle to your specific needs.
💡 Key Concepts
Article Characteristics
Like Sulu pages, articles are configured via templates and can include additional SEO and excerpt information. Moreover, articles support the same drafting, publishing and versioning functionality as provided by pages. In contrast to Sulu pages, articles are managed in a flat list instead of a tree structure. Furthermore, unlike the Sulu page tree, the article bundle is optimized for managing a big number of articles.
Elasticsearch dependency
The SuluArticleBundle was originally developed to be used in the publishing industry. To satisfy the initial requirements regarding performance and scalability, a view layer stored in an Elasticsearch index was utilized. Because of this, there is no way to use the bundle without Elasticsearch at the moment. It is planned to remove this hard dependency in the next major version.
If you cannot or do not want to make Elasticsearch a dependency of your project, you can use Sulu pages for certain use cases instead of the SuluArticleBundle. However, be aware that the article list provides a better performance and is more comfortable to use with a large number of entities.
❤️ Support and Contributions
The Sulu content management system is a community-driven open source project backed by various partner companies. We are committed to a fully transparent development process and highly appreciate any contributions.
In case you have questions, we are happy to welcome you in our official Slack channel. If you found a bug or miss a specific feature, feel free to file a new issue with a respective title and description on the the sulu/SuluArticleBundle repository.
📘 License
The Sulu content management system is released under the under terms of the MIT License.