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
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
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
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.
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.
The Sulu content management system is released under the under terms of the MIT License.
Copyright (c) 2016 Sulu
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- Add hint about permissions to article-type section of docs (#490)
- Set routePath as URL for the search (#487)
Merge branch 'release/2.0' of github.com:sulu/SuluArticleBundle
By alexander-schranz, 4 months ago
- add phpcr migration for smartcontent (#482)
- Fix link to example template in installation docs (#479)
- Add article teaser migration for snippets (#477)
- Migrate teaser provider in articles (#476)
- Fix nullable excerpt images (#475)
- Use load instead LoadTemplate for compatibility with Twig 3 (#471)
- add ghostlocale (#469)
- Merge branch 'release/2.0' of github.com:sulu/SuluArticleBundle
- add branch alias for 2.0
- Merge branch 'release/1.1' of github.com:sulu/SuluArticleBundle into release/2.0
- Merge branch 'release/1.0' of github.com:sulu/SuluArticleBundle into release/1.1
- add branch aliases
- Merge branch 'develop' of github.com:sulu/SuluArticleBundle
- Adjust README.md structure and content (#459)
- Fix return type in ReindexCommand (fixes #464) (#465)
- Merge pull request #461 from sulu/docs/app-bundle
fix review comments
By wachterjohannes, 6 months ago
- Add troubleshooting section to article-view-document documentation
- fix type error (#458)
- fix variables of travis pipeline (#457)
- enhance controller referencing syntax (#456)
- Add the ext-json to composer.json (#416)
- Merge pull request #415 from tstauer/bugfix/spelling-progessbar
- PHPStan Level 2 (#454)
- Change route definitions to yaml and add sulu_article prefix to routes (#455)
- Remove deprecations (#453)
- Add tab-view for article-types (#436)