PHPackages                             fbeen/simplecmsbundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. fbeen/simplecmsbundle

ActiveSymfony-bundle[Framework](/categories/framework)

fbeen/simplecmsbundle
=====================

Complete CMS functionality for Symfony 3

V1.0.4(9y ago)051MITPHPPHP ^5.5.9|^7.0

Since Nov 13Pushed 8y ago3 watchersCompare

[ Source](https://github.com/Fbeen/SimpleCmsBundle)[ Packagist](https://packagist.org/packages/fbeen/simplecmsbundle)[ RSS](/packages/fbeen-simplecmsbundle/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (5)Dependencies (8)Versions (6)Used By (0)

Simple CMS for Symfony 3
========================

[](#simple-cms-for-symfony-3)

Installation
------------

[](#installation)

Download the necessary bundles with Composer:

```
$ composer require fbeen/simplecmsbundle

```

Then add the bundles to the app/config/AppKernel.php file

```
            // ...

            // Sonata
            new Sonata\CoreBundle\SonataCoreBundle(),
            new Sonata\BlockBundle\SonataBlockBundle(),
            new Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle(),
            new Sonata\AdminBundle\SonataAdminBundle(),

            // Ivory CKEditor
            new Ivory\CKEditorBundle\IvoryCKEditorBundle(),

            // Knp Menu
            new Knp\Bundle\MenuBundle\KnpMenuBundle(),

            // Doctrine behaviors
            new Knp\DoctrineBehaviors\Bundle\DoctrineBehaviorsBundle,

            // a2lix Translation
            new A2lix\AutoFormBundle\A2lixAutoFormBundle(),
            new A2lix\TranslationFormBundle\A2lixTranslationFormBundle(),

            // Fbeen Simple CMS bundle
            new Fbeen\SimpleCmsBundle\FbeenSimpleCmsBundle(),

            new AppBundle\AppBundle(),

```

Required configuration in app/config/config.yml:

```
sonata_block:
    default_contexts: [admin]
    blocks:
        # enable the SonataAdminBundle block
        sonata.admin.block.admin_list: ~
        sonata.block.service.clear_cache: ~

sonata_admin:
    show_mosaic_button: false
    dashboard:
        groups:
            cms:
                label: 'SimpleCMS'
                items:
                    - fbeen_simple_cms.admin.route
                    - fbeen_simple_cms.admin.content
                    - fbeen_simple_cms.admin.menu
                    - fbeen_simple_cms.admin.image
                    - fbeen_simple_cms.admin.simple_block_type
        blocks:
            -
                position: left
                type: sonata.admin.block.admin_list
                settings:
                    groups: [main, docs, users, cms]
            -
                position: left
                type: sonata.block.service.clear_cache

ivory_ck_editor:
    default_config: cmf_content
    configs:
        cmf_content: { toolbar: standard }

a2lix_translation_form:
    locale_provider: default
    locales: [%locale%]
    default_locale: %locale%
    required_locales: [%locale%]
    templating: "FbeenSimpleCmsBundle:Admin:a2lix_tabs.html.twig"

```

Enable translation in app/config/config.yml:

```
framework:
    #esi:             ~
    translator:      { fallbacks: ["%locale%"] }

```

Create the database and update the schema:

```
$ bin/console doctrine:database:create
$ bin/console doctrine:schema:update --force

```

Apply routing in the app/config/routing.yml

```
# Simple CMS
fbeen_simple_cms:
    resource: .
    type: fbeen_simple_cms

# Sonata-admin
admin_area:
    resource: "@SonataAdminBundle/Resources/config/routing/sonata_admin.xml"
    prefix: /admin

_sonata_admin:
    resource: .
    type: sonata_admin
    prefix: /admin

# Application
app:
    resource: "@AppBundle/Controller/"
    type:     annotation
# ...

```

Install the assets: (don't use the symlink option on windows)

```
$ bin/console assets:install --symlink

```

Usage
-----

[](#usage)

How to load a content in a normal symfony controller
----------------------------------------------------

[](#how-to-load-a-content-in-a-normal-symfony-controller)

Loading dynamic content is as easy as loading data from each other entity. To search content based on its name we can make use of the findCompleteContent method from the ContentRepository. The repository will join all other data like the blockContainer and the underlying blocks at once.

Example how to create a homepage with the content of the CMS and additionally some newsitems

```
    /**
     * @Route("/", name="homepage")
     */
    public function indexAction(Request $request)
    {
        $em = $this->getDoctrine()->getManager();

        $homepage = $em->getRepository('FbeenSimpleCmsBundle:Content')->findCompleteContent('homepage');

        if (!$homepage) {
            throw $this->createNotFoundException('No homepage configured');
        }

        $newsitems = $em->getRepository('AppBundle:Newsitem')->findFrontpageNews()->getResult();

        return $this->render('default/index.html.twig', array(
            'content' => $homepage,
            'newsitems' => $newsitems,
        ));
    }

```

multi languages
---------------

[](#multi-languages)

Imagine that you want a website that supports three languages and that you want to have dutch as default language and english and german as additional languages.

### add a locales parameter under parameters:

[](#add-a-locales-parameter-under-parameters)

```
parameters:
    locale: nl
    locales: [nl, en, de]

```

### Change the a2lix translation form configuration

[](#change-the-a2lix-translation-form-configuration)

```
a2lix_translation_form:
    locale_provider: default
    locales: %locales%
    # ...

```

To be continued

###  Health Score

27

—

LowBetter than 47% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1 days

Total

5

Last Release

3511d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/1cc8c2d6ff35eeecef4931e636ffd89fc2e84dd772a0168f506ae23d4e5720e7?d=identicon)[fbeen](/maintainers/fbeen)

---

Top Contributors

[![Fbeen](https://avatars.githubusercontent.com/u/2814747?v=4)](https://github.com/Fbeen "Fbeen (35 commits)")

---

Tags

Simple CMS Bundle

### Embed Badge

![Health badge](/badges/fbeen-simplecmsbundle/health.svg)

```
[![Health](https://phpackages.com/badges/fbeen-simplecmsbundle/health.svg)](https://phpackages.com/packages/fbeen-simplecmsbundle)
```

###  Alternatives

[pimcore/pimcore

Content &amp; Product Management Framework (CMS/PIM/E-Commerce)

3.8k3.8M464](/packages/pimcore-pimcore)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.4M196](/packages/sulu-sulu)[open-dxp/opendxp

Content &amp; Product Management Framework (CMS/PIM)

9317.2k55](/packages/open-dxp-opendxp)[shopware/storefront

Storefront for Shopware

674.4M211](/packages/shopware-storefront)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

585.4M524](/packages/shopware-core)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1175.2k](/packages/rcsofttech-audit-trail-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
