Magento 2: mostre o captcha no formulário de contato

10

Eu uso o código abaixo em um bloco CMS para mostrar o formulário padrão entre em contato conosco.

<p>{{block 
    class="Magento\Contact\Block\ContactForm"
    name="contactForm" 
    template="Magento_Contact::form.phtml"}}</p>

Apenas imaginando, haverá uma maneira principal de ativar o captcha no formulário?

Malaiselvan
fonte

Respostas:

22

Para adicionar CAPTHA a um formulário Fale Conosco, você deve ir para a página Lojas -> Configuração -> Clientes -> Configuração de Clientes e Ativar CAPTCHA. Certifique-se de selecionar o valor Fale Conosco no campo Formulários.

insira a descrição da imagem aqui

Depois de atualizar a configuração, limpe o cache.

Espero que ajude.

Max Pronko
fonte
Acredito que o design da guia é apenas para página e não para o bloco. Além disso, a pergunta que fiz é como mostrar de Captcha na Conosco formulário de contato que eu não acredito que você responder a endereços que ...
Malaiselvan
@ Malaiselvan eu perdi completamente todo o ponto da questão. Ontem foi um longo dia. Deixe-me escrever uma resposta.
Max Pronko
Obrigado. Você está certo. No entanto, percebi que não preciso criar um bloco ou uma página para entrar em contato conosco. Tudo o que preciso fazer é ativar o Fale conosco na configuração e ativar o Catpcha para o Fale conosco.
Malaiselvan 17/01/16
3
Suponha que eu criei o Formulário personalizado e que eu queira adicioná-lo na lista "Formulários", como posso gerenciar isso? Então, no meu formulário personalizado também captcha irá exibir
Ankit Shah
Quero usar o captcha padrão no formulário de boletim informativo. Então, que tipo de mudanças eu devo fazer?
Sarfaraj Sipai
3

Você pode criar um modelo de formulário personalizado (com base no original) e carregar o bloco reCaptcha programaticamente com isso:

<?php 
    echo $block->getLayout()
        ->createBlock('MSP\ReCaptcha\Block\Frontend\ReCaptcha',
            'msp-recaptcha',
            ['data' => 
                [
                    'jsLayout' => 
                    [
                        'components' => 
                        [
                            'msp-recaptcha' => 
                            [
                                'component' => 'MSP_ReCaptcha/js/reCaptcha',
                                'zone' => 'contact'
                            ]
                        ]
                    ]
                ]
            ]
        )
        ->setTemplate('MSP_ReCaptcha::msp_recaptcha.phtml')
        ->toHtml();
    ?>
Yann Charlou
fonte