/SuluArticleBundle

Bundle for managing localized content-rich entities like blog-posts in the Sulu content management system

Primary LanguagePHPMIT LicenseMIT

SuluArticleBundle

Official Sulu Bundle Badge

GitHub license GitHub tag (latest SemVer) Test workflow status CircleCI build Sulu compatibility


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.


Sulu Slideshow


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 commands to add the bundle to the dependencies of your project:

composer require "elasticsearch/elasticsearch:7.17.*" # should match version of your elasticsearch installation
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.