Как разместить форму подписки FeedBurner под статьей.

Форма подписки FeedBurner

Добрый день друзья.

Мне часто задают вопрос, как разместить форму подписки FeedBurner под каждым постом.

Для решения этой задачи есть несколько вариантов:

Первый способ — добавление формы подписки в плагин.

Этим способом можно воспользоваться если Вы на своем блоге используете плагин Social Share Buttons для вывода кнопок социальных сетей, или любой подобный, который позволяет редактировать текст перед выводом кнопок.

Я буду рассказывать как это сделать для плагина Social Share Buttons.

В Админ панели входим в пункт Share Buttons -> Главные настройки плагина.

И в разделе «Текст перед социальными кнопками» в поле Ваш текст, перед самим текстом, вводим код формы полученной на FeedBurner:

<form style="border:1px solid #ccc;padding:3px;text-align:center;" action="http://feedburner.google.com/fb/a/mailverify" method="post" target="popupwindow" onsubmit="window.open('http://feedburner.google.com/fb/a/mailverify?uri=yourfeed/name', 'popupwindow', 'scrollbars=yes,width=550,height=520');return true"> <p style="color: #1D2C2F; font-weight: normal; font-size: 14px;">Хотите быть в курсе, и получать новые статьи на свою эл. почту?</p>
<p><strong>Введите адрес эл.почты:</strong></p>
<p><input type="text" style="width:140px" name="email"/></p>
<input type="hidden" value="yourfeed/name" name="uri"/>
<input type="hidden" name="loc" value="ru_RU"/>
<input type="submit" value="Да, хочу быть в курсе!" />
</form>
<br />

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

форма подписки

Единственный недостаток этого способа заключается в том, что форма подписки FeedBurner будет выводится вместе с блоком социальных кнопок везде, даже на страницах сайта, если выбрана эта функция. Поэтому при использовании данного способа, кнопки соц. сетей лучше всего отображать только в постах.

Второй способ состоит в использовании коротких кодов.

Эта функциональность WordPress позволяет вызывать определенную функцию непосредственнов посте.

Для реализации данного способа пишем саму функцию в файле function.php (функции темы). Проще всего это сделать в административной панели Вашего блога в пункте меню «Внешний вид -> Редактор», выбрав соответствующий файл для редактирования:

function feedBurnerForm() {
return '<form style="border:1px solid #ccc;padding:3px;text-align:center;" action="http://feedburner.google.com/fb/a/mailverify" method="post" target="popupwindow" onsubmit="window.open(\'http://feedburner.google.com/fb/a/mailverify?uri=yourfeed/name\', \'popupwindow\', \'scrollbars=yes,width=550,height=520\');return true">
<p>Хотите быть в курсе, и получать новые статьи на свою эл. почту?</p>
<p><strong>Введите адрес эл.почты:</strong></p>
<p><input type="text" style="width:140px" name="email"/></p>
<input type="hidden" value="yourfeed/name" name="uri"/>
<input type="hidden" name="loc" value="ru_RU"/>
<input type="submit" value="Да, хочу быть в курсе!" />
</form>';
}

add_shortcode('frmFeedBurner','feedBurnerForm');

Обратите внимание на то, что в этом случае все одинарные кавычки, расположенные между тэгами <form> и </form>, должны быть заэкранированны, т.е. перед каждой одинарной кавычкой должен располагаться символ «\» (обратный слэш), как в приведенном примере.

Теперь для вывода формы подписки, достаточно в нужном месте статьи ввести специальный код [frmFeedBurner], и при публикации статьи в этом месте будет выводится форма подписки FeedBurner

К недостатку данного способа следует отнести то, что каждой раз, при написании статьи, придется указывать место вывода формы подписки FeedBurner вручную. Но это дает и преимущество, позволяя выводить форму подписки FeedBurner в любом месте, хоть вначале, хоть в середине статьи.

Еще один способ — это использование шаблона страницы.

Для реализации данного способа нужно в административной панели Вашего блога в пункте меню «Внешний вид -> Редактор» выбрать для редактирования файл Одна страница (single.php), так как именно он отвечает за отображение статьи полностью.

И в нужном месте, как правило это после вызова функции get_template_part(‘content’, ‘single’), выставить код формы подписки FeedBurner, заменив в ней все двойные кавычки одинарными, как в следующем примере:

while (have_posts())
{
the_post();
get_template_part('content', 'single');
echo "<form style='border:1px solid #ccc;padding:3px;text-align:center;' action='http://feedburner.google.com/fb/a/mailverify' method='post' target='popupwindow' onsubmit='window.open('http://feedburner.google.com/fb/a/mailverify?uri=yourfeed/name', 'popupwindow', 'scrollbars=yes,width=550,height=520');return true'><br />
<p>Хотите быть в курсе, и получать новые статьи на свою эл. почту?</p><br />
<p><strong>Введите адрес эл.почты:</strong></p>
<p><input type='text' style='width:140px' name='email'/></p>
<input type='hidden' value='yourfeed/name' name='uri'/>
<input type='hidden' name='loc' value='ru_RU'/>
<input type='submit' value='Да, хочу быть в курсе!' /><br />
</form>";

comments_template();
}

Конечно же есть и другие способы выводить форму подписки FeedBurner после каждой статьи, но они или более сложные, или требуют использования плагинов.

А как Вы решили эту задачу? Расскажите об этом в комментариях!

Всего Вам доброго.

2 thoughts on “Как разместить форму подписки FeedBurner под статьей.

  1. sefeia:

    Замечательная статья! Все сделала, как Вы описали по первому способу. Получилось! Одно лишь беспокоит, две верхние строчки и рамка для емейла сдвинуты к левому краю, а кнопка «Да, хочу» почему-то в центре. Подскажите, как это исправить?
    Спасибо.

  2. Спасибо, все сделала, вставила код перед комментариями, получилось! А не могли бы вы подсказать , как сделать форму подписки с красивым оформлением и картинкой?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *