Контактная форма 7 перенаправляет на страницу благодарности, которая не существует - PullRequest
0 голосов
/ 02 апреля 2020

Я хотел бы показать страницу благодарности при отправке контактной формы 7 в WordPress. Но я не хочу перенаправлять страницу благодарности, которая является реальной страницей. Я хочу, чтобы эта страница отображалась только при отправке формы, и никто не может получить доступ к этой странице по ссылке.

Ответы [ 2 ]

1 голос
/ 07 апреля 2020

Вы можете сделать это очень просто. Это бесплатный плагин Контактная форма 7 Перенаправления

Вы можете создать страницу благодарности и установить ее на вкладке «Настройка перенаправления» в настройках формы.

Теперь вы просто нужно перенаправить эту страницу, если любой пользователь получит доступ к этой странице через URL. Поместите этот код в файл functions.php.

function my_logged_in_redirect() {
    if ( ! is_user_logged_in() && is_page( 'THANKYOU-PAGE-ID' ) ) {
        wp_redirect( 'HOME-PAGE-URL' );
        die;
    }
}
add_action( 'template_redirect', 'my_logged_in_redirect' );

Если вы хотите, чтобы эта страница не была проиндексирована Google, вы можете добавить эту страницу в файл robots.txt.

Если ваш URL-адрес такой, http://example.com/THANKYOU-PAGE-URL/, сделайте что-то вроде ниже.

User-agent: *
Disallow: /THANKYOU-PAGE-URL/
0 голосов
/ 02 апреля 2020

Вам не нужно перенаправлять страницу. Просто отобразите благодарственное сообщение и скрыть форму .

Добавить это в wp-config. php

define('WPCF7_LOAD_JS', false);

На странице вашей контактной формы. Вместе с шорткодом контактной формы также добавьте этот шорткод.

[wpcf7_submit_msg]

Добавьте следующий код в свой собственный плагин index.php или тему functions.php

function wpcf7_submit_msg(){
    if(isset($_POST["_wpcf7"])){
        echo '<h2>Thank you for submitting the form _wpcf7</h2>
        <style type="text/css">
            .wpcf7{ display: none !important; }
        </style>';
    }
}
add_shortcode('wpcf7_submit_msg','wpcf7_submit_msg');

Примечание. Если вы не знаете, как создать собственный плагин. Просто создайте новую папку в wp-content/plugins и добавьте новый индекс файла. php в этот файл добавьте этот код.

<?php
/* Plugin Name: Contact Form Submit Message */

Ниже этой строки добавьте приведенный выше код в индекс. php

Go на панель инструментов WordPress и активируйте плагин Форма обратной связи Отправьте сообщение , и оно просто работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...