Contact Form 7 – с какой страницы отправка

Здравствуйте!

Я использую одну форму сразу на большем числе страниц, вставляю ее через

echo do_shortcode( '[contact-form 2 "Форма заказа"]' );

Собственно вопрос: Подскажите как узнать с какой страницы была выполнена отправка?

Спасибо.

Извращенно мышление выдало следующее:

1) Добавляем в конструкторе формы где-то <!– hidden –>
2) Выполняем следующее:

$hiddenvalue1 = substr($_SERVER["SCRIPT_NAME"],strrpos($_SERVER["SCRIPT_NAME"],"/")+1);
$hiddenfield = "<input type='hidden' value='$hiddenvalue1' name='Hidden1' />";

$form = do_shortcode( '[contact-form 2 "Форма заказа"]' );
echo str_replace('<!-- hidden -->','$hiddenfield',$form);

Но….. мне кажется что есть более простой вариант. Приходить может и не название стр, а скажем УРЛ, это будет даже лучше. Есть там такое "встроенное"?

возвращай id страницы

возвращай id страницы

Очень информативно получилось.

Боюсь что конечный пользователь скажет: "И что мне с ним делать?".

__

Верхний код поправил, там были баги.

Итак, вот новый, он работает в связке с "Contact Form 7 Hidden Field plugin", т.к. изначально Contact Form 7 не поддерживает скрытые поля (да 14.02.2011)

                                if ($echo_text=get_post_meta($post->ID,'1_form',true)) // Галочка на вывод формы внизу 
                                { 
                                    $hiddenvalue1 = curPageURL();
                                    $form = do_shortcode( '[contact-form 2 "Форма заказа"]' );
                                    echo str_replace('hiddenvalue1',$hiddenvalue1,$form);
                                };

Функция:

    function curPageURL() {
         $pageURL = 'http';
         if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";}
         $pageURL .= "://";
         if ($_SERVER["SERVER_PORT"] != "80") {
          $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
         } else {
          $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
         }
         return $pageURL;
    }
echo do_shortcode( '[contact-form 2 "Форма заказа"]' );

А вот этот вот текст — «Форма заказа» для чего нужен? Этот текст где-то в письме еще используется (например, в заголовках письма)? Может вставляя форму можно писать не только «форма заказа», а: пижама, гамаши, носки, рубашка…?

Намек понятен… спасибо. Но никак не могу найти как в письме то это вывести. Даже дефолтная форма не выводит этого в заголовке.
Подскажи плизз, что за "тег" нужно вставить?

Блин…

Для Contact Form 7 есть Special Mail Tags
http://contactform7.com/blog/2009/12/25/special-mail-tags/

Список специальных тегов, которые ставятся в поле "Тело сообщения".
Например, при вставке [_post_title] в письме будет заголовок страницы, с которой была отправлена форма.

Есть ещё:
[_post_id], [_post_name], [_post_title] , [_post_url] и др.

Удачи!
Ф

Anonymous
Отправить
Ответ на: