Contact Form
Requirements
Thederafu/form and derafu/data-processor packages installed and configured in services.yaml.
Check the configuration in the website skeleton.
Quick Start
Install the package:
composer require derafu/contact-form
Import the routes to your routes.yaml:
imports:
    - { resource: '../vendor/derafu/contact-form/resources/config/contact-form-routes.yaml' }
Import the services to your services.yaml:
imports:
    - { resource: '../vendor/derafu/contact-form/resources/config/contact-form-services.yaml' }
Copy the templates/contact/index.html.twig and templates/contact/success.html.twig to your project.
If you want to use the default templates (and not copy them), add the templates path to your service configuration:
Derafu\Renderer\Contract\RendererInterface:
    factory: ['Derafu\Renderer\Factory\RendererFactory', 'create']
    lazy: true
    arguments:
        $options:
            paths:
                - '%kernel.project_dir%/vendor/derafu/contact-form/resources/templates'
Configure the environment variables:
# Source of the form for identifying it in the webhook.
# Useful for multiple forms in the same webhook.
FORM_CONTACT_SOURCE=derafu.dev
# URL and secret key for processing the contact form.
# Get the URL from the webhook service you are using.
# The secret key will be used to sign the payload using HMAC.
FORM_CONTACT_WEBHOOK_URL=
FORM_CONTACT_WEBHOOK_SECRET_KEY=
# Site and secret key for protect forms with captcha.
# Get the keys from https://www.hcaptcha.com/
CAPTCHA_SITE_KEY=
CAPTCHA_SECRET_KEY=
On this page
                            
                        
            #php
        
        
                            Last updated on 24/09/2025
                                        by Anonymous