Magento 2: Pokaż captcha w formularzu kontaktowym

10

Używam poniższego kodu w bloku CMS, aby wyświetlić domyślny formularz kontaktowy Magento.

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

Zastanawiam się, czy istnieje podstawowy sposób włączenia captcha w formularzu?

Malaiselvan
źródło

Odpowiedzi:

22

Aby dodać CAPTHA do formularza Kontakt, musisz przejść do Sklepów -> Konfiguracja -> Klienci -> Strona konfiguracji klientów i włączyć CAPTCHA. Pamiętaj, aby wybrać opcję Skontaktuj się z nami w polu Formularze.

wprowadź opis zdjęcia tutaj

Po zaktualizowaniu konfiguracji wyczyść pamięć podręczną.

Mam nadzieję, że to pomoże.

Max Pronko
źródło
Uważam, że karta Projekt dotyczy tylko strony, a nie bloku. Zadałem również pytanie, jak pokazać Captcha w formularzu kontaktowym, który, jak sądzę, nie odpowiada na adresy, które ...
Malaiselvan 16.01.16
@Malaiselvan całkowicie przegapiłem cały punkt pytania. Wczoraj był długi dzień. Pozwól, że napiszę ci odpowiedź.
Max Pronko
Dzięki. Masz rację. Uświadomiłem sobie jednak, że nie muszę tworzyć bloku ani strony, aby się z nami skontaktować. Wszystko, co muszę zrobić, to włączyć Kontakt z konfiguracji i włączyć Catpcha dla Kontakt.
Malaiselvan
3
Załóżmy, że utworzyłem formularz niestandardowy i chcę dodać go do listy „Formularze”, jak więc mogę to zarządzać ?. Na mojej niestandardowej formie wyświetli się również captcha
Ankit Shah
Chcę użyć domyślnej captcha w formie biuletynu. więc jakie zmiany mam wprowadzić?
Sarfaraj Sipai
3

Możesz utworzyć niestandardowy szablon formularza (na podstawie oryginału), a następnie programowo załadować blok reCaptcha za pomocą tego:

<?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
źródło