PHPackages                             iampedropiedade/concrete5-symfony-form - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. iampedropiedade/concrete5-symfony-form

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

iampedropiedade/concrete5-symfony-form
======================================

Symfony Form Integration For Concrete5

1.0.2(4y ago)012MITPHPPHP &gt;=7.2.5

Since Jul 6Pushed 4y agoCompare

[ Source](https://github.com/iampedropiedade/concrete5-symfony-form)[ Packagist](https://packagist.org/packages/iampedropiedade/concrete5-symfony-form)[ Docs](https://github.com/iampedropiedade/concrete5-symfony-form)[ RSS](/packages/iampedropiedade-concrete5-symfony-form/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (2)Dependencies (8)Versions (4)Used By (0)

Concrete5 Symfony Form Component
================================

[](#concrete5-symfony-form-component)

The Form component allows you to easily create, process and reuse HTML forms using the Symfony Form Component within Concrete 5.

Tested with 8.5.4 +

### Resources

[](#resources)

-
-
-

### Installation

[](#installation)

```
composer require matt9mg/concrete5-symfony-form

```

### Using the Form Component in a view

[](#using-the-form-component-in-a-view)

This is a generic example using doctrine entities, but can be used as a raw form or other class.

```
use Matt9mg\Concrete5\Symfony\Form\FormFactory;

public function view()
{

    $factory = (new FormFactory(
        $this->app->make('session')
    ))->createFormFactory();

    $em = $this->app->make(EntityManagerInterace::class);
    $entity = $em->getRepostiory(MyEntity:class);

    $form = $factory->create(MyForm::class, $entity);
    $form->handleRequest($this->request);

    if ($form->isSubmitted() === true && $form->isValid() === true) {
        $em->persist($entity);
        $em->flush();

        //...
    }

    $this->set('formView', $form->createView());
}
```

### Rendering a form

[](#rendering-a-form)

```
use Matt9mg\Concrete5\Symfony\Form\FormRenderer;
$formHelper = (new FormRenderer())
        ->build()
        ->getFormHelper();

// Render the form view
echo $formHelper->start($formView);
echo $formHelper->label($formView->vars['form']['name']);
echo $formHelper->widget($formView->vars['form']['name']);
echo $formHelper->errors($formView->vars['form']['name']);
echo '';
echo $formHelper->label($formView->vars['form']['text']);
echo $formHelper->widget($formView->vars['form']['text'], ['attr' => ['style' => 'border: 10px']]);
echo $formHelper->errors($formView->vars['form']['text']);
echo $formHelper->end($formView);
```

### Override supplied templates or add custom ones

[](#override-supplied-templates-or-add-custom-ones)

```
use Matt9mg\Concrete5\Symfony\Form\FormRenderer;
$formHelper = (new FormRenderer())
        ->addTemplatePath(__DIR__ . '/my/template/path')
        ->build()
        ->getFormHelper();
```

### How to use the C5 Specific form extensions

[](#how-to-use-the-c5-specific-form-extensions)

There are two new Types `FileManagerType::class` and `SitemapType::class`.

The below new config options have public constants for these options.

##### Configuration Options for FileManagerType::class

[](#configuration-options-for-filemanagertypeclass)

In the normal symfony way when declare the field type array the below options are available for this field type.

file\_manager\_type =&gt; 'APP' or 'AUDIO' or 'DOC' or 'FILE' or 'IMAGE' or 'TEXT' or 'VIDEO'

file\_manager\_args =&gt; \[\]

Example within a form class

```
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        // ...
        ->add('relatedImage', FileManagerType::class, [
            'file_manager_type' => FileManagerType::FILE_MANAGER_TYPE_FILE,
        ])
    ;
}
```

##### Configuration Options for SitemapType::class

[](#configuration-options-for-sitemaptypeclass)

In the normal symfony way when declare the field type array the below options are available for this field type.

selector\_type =&gt; 'SELECT\_PAGE' or 'QUICK\_SELECT' or 'MULTIPLE\_SITEMAP' or 'SELECT\_FROM\_SITEMAP'

selector\_type\_args =&gt; \[\]

selector\_type\_starting\_point =&gt; 'HOME\_CID'

```
public function buildForm(FormBuilderInterface $builder, array $options)
{
    $builder
        // ...
        ->add('relatedPage', SitemapType::class, [
            'selector_type' => SitemapType::SITEMAP_TYPE_SELECT_PAGE,
        ])
    ;
}
```

### Feedback

[](#feedback)

Feedback is always welcome, want to add some features please raise a PR, I hope this helps you :)

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 59.3% 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 ~318 days

Total

3

Last Release

1500d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/00e141616e916445125c0a015c41cb79dcd6eccd33b50bae3fbcaaf3eb4562ec?d=identicon)[iampedropiedade](/maintainers/iampedropiedade)

---

Top Contributors

[![matt9mg](https://avatars.githubusercontent.com/u/8473296?v=4)](https://github.com/matt9mg "matt9mg (32 commits)")[![iampedropiedade](https://avatars.githubusercontent.com/u/8091498?v=4)](https://github.com/iampedropiedade "iampedropiedade (22 commits)")

### Embed Badge

![Health badge](/badges/iampedropiedade-concrete5-symfony-form/health.svg)

```
[![Health](https://phpackages.com/badges/iampedropiedade-concrete5-symfony-form/health.svg)](https://phpackages.com/packages/iampedropiedade-concrete5-symfony-form)
```

###  Alternatives

[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[netgen/layouts-core

Netgen Layouts enables you to build and manage complex web pages in a simpler way and with less coding. This is the core of Netgen Layouts, its heart and soul.

3689.4k10](/packages/netgen-layouts-core)[contao/core-bundle

Contao Open Source CMS

1231.6M2.4k](/packages/contao-core-bundle)[chameleon-system/chameleon-base

The Chameleon System core.

1026.5k3](/packages/chameleon-system-chameleon-base)

PHPackages © 2026

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