10 Июнь 2014      3956      72

Переадресация после первого комментария без плагина

Финансовая грамотность и инвестиции в криптовалюту

Здравствуйте, уважаемые читатели блога asbseo.ru!

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

Я считаю, что данное действие очень важно для любого блога и это помогает решить ряд важных задач:

  • Поблагодарить человека за интерес к блогу и его комментарий
  • Попытаться сделать его постоянным читателем и подписчиком
  • Заинтересовать его какой-то «движухой» на блоге (акции, конкурсы)
  • Предложить ознакомиться с платными и бесплатными продуктами

Заменяем плагин Comment Redirect by Yoast кодом! Благодарность за первый комментарий.Раньше для переадресации после первого комментария на определенную страницу я использовал плагин «Comment Redirect by Yoast». Список наиболее важных плагинов для WordPress, которые когда-то были установлены на моем блоге я публиковал в этой статье. Пост был опубликован аж в декабре 2011 года и с тех пор многое изменилось, от многих плагинов я избавился, некоторые заменил аналогами.

Если интересно, могу опубликовать новый список дополнений, которые сейчас у меня установлены. 🙂

Я уже неоднократно писал о том, что нужно стараться сократить количество плагинов на блоге и по возможности заменять их функции какими-то другими методами. Например, я не использую плагины для вставки видео в блог, для размещения рекламы, даже от плагина кэширования блога отказался. Я знаю что очень многие блоггеры используют огромное количество плагинов на своих блогах, оказывая услугу «Анализ блога», я вижу что многие новички используют их очень много, даже кнопки социальных сетей вставляют при помощи каких-то плагинов. Это вообще ЖЕСТЬ!

Друзья, плагины создают дополнительную нагрузку на блог, тем самым снижая скорость работы блога и увеличивая скорость загрузки страниц! Большинство функций можно реализовать без их использования и к этому нужно стремиться!  Именно подобную проблему мы сейчас с вами решим и отключим расширение "Comment Redirect by Yoast", ну, если оно у вас, конечно, есть и заменим его обычным кодом (хаком), который добавим в файл темы «function.php». Если вы еще не сделали переадресацию после первого комментария, то рекомендую вам сделать это прямо сейчас, тем более это очень просто. Теперь по шагам.

1. Создаем новую страницу в админке Wordpres блога и оформляем ее. В моем случае это страница «Это ваш первый комментарий на моем блоге!», можете ее посмотреть.

2. Исключаем эту страницу из основного меню (можно из карты блога исключить), ее видеть посетителям не обязательно. Сделать это можно при помощи плагина «Exclude Pages from Navigation», например. Я его давно не использую у себя по вполне понятным причинам. 🙂 На моем блоге меню реализовано при помощи одноименного раздела вкладки «Внешний вид» в административной панели блога.

Меню блога asbseo.ru

3. Открываем для редактирования файл «function.php», который расположен в папке с темой вашего блога. Можно редактировать его прямо из административной панели. Вкладка «Внешний вид», ссылка «Редактор», файл «function.php». Рекомендую перед редактированием сделать резервную копию этого файла, дабы потом была возможность восстановить его. Теперь, в самом конце этого файла, перед закрытием кода — «?>», добавляем следующий код:

// Переадресация после первого комментария
function redirect_after_first_comment($url, $comment) {
$comment_count = get_comments(
array(
'author_email' => $comment->comment_author_email,
'count' => true
)
);
if ( $comment_count == 1 ) {
wp_redirect('http://asbseo.ru/eto-vash-pervyj-kommentarij-na-moem-bloge'); /* Сюда подставляете URL своей страницы приветствия */
exit();
}
return $url = get_comment_link();
}
add_filter( 'comment_post_redirect', 'redirect_after_first_comment', 5, 2);
// Конец кода

В итоге, у меня это выглядит так:

Хак переадресации после первого комментария

Обратите внимание на то, что в коде указан адрес на мою страницу, в это место вам необходимо подставить свою ссылку. После сохранения файла «function.php» все должно работать.

На этом у меня все, надеюсь мой пост был полезен для вас!

С уважением, Александр Бобрин

 

Поделись с друзьями:

Обратите внимание:

Обсуждение: 72 комментария
  1. Павел:

    Спасибо, Александр.

    Ответить
    1. Dzmitry Roshchyn:

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

      Ответить
  2. Николай:

    Спасибо, Александр, хорошая вещь, но к сожалению на моей теме сайта не пошло!:(

    Ответить
  3. Виталий Калинин:

    Люблю я эти штуки с кодом. Спасибо. Сейчас у себя реализую. Нет плагинам!

    Ответить
  4. Максим:

    А у меня Joomla =) Причем довольно старенькая уже.

    Ответить
  5. Vachevskiy:

    Когда-то давно я задумался над тем чтобы убрать этот плагин, долго искал код в интернете и даже нашел, но к сожалению переадресация происходила не только после первого комента а постоянно. Мне это не подошло и я решил убрать код.

    А вообще убирать плагины это очень полезная штука для загрузки блога. Неделю назад убрал плагин который выводит карту сайта. Теперь карту можно сделать с помощью all in one seo pack писал в себя на блоге об этом.

    Думаю скоро все дойдет до того, что плагины вообще будут ненужны, а все можно будет делать с помощью кода. Сейчас у меня на блоге только 11 плагинов.

    Ответить
    1. Dzmitry Roshchyn:

      Да и All in one Seo pack можно смело убрать, я, например использую конструкцию заполнения мета тегов посредством произвольных полей, код брал на сайте wp-kama.ru. Кому интересны авторские наработки, заходите, смотрите, весьма полезный ресурс.

      Ответить
  6. Кай:

    Нужная вещь, надо ею заняться и реализовать на блоге... спасибо!.

    да, было бы не плохо увидеть какие плагины вы сейчас используете и какое их количество в результате.

    И ещё, возможно я пропустил вашу статью, а как без плагинов нормально сделать кнопки внизу статьи для удобного использования посетителями? как у вас... или это плагин?

    Ответить
    1. Александр Бобрин:

      Кай, если Вы имеете ввиду кнопки социальных сетей, то я о них написал уже не одну статью. У Вас уже вроде был вопрос по этому поводу! Кнопки с сервиса: sapegin.github.io/social-likes/ru

      Ответить
      1. Кай:

        Точно, проверил, был с моей стороны такого же рода вопрос. Извиняюсь.:-0

        меня что-то упорно не тянет в этот сервис...:-)))

        Ответить
  7. Иван:

    Вводите людей в заблуждение, что плагины зло. На деле PHP код грузит сайт также как и плагины. Единственное, если плагин сделан криворуким человеком, то он будет грузить больше чем надо. А по сути если все сделано норм, то плагин будет равносилен вашему PHP коду.

    Ответить
    1. Андрей Бас:

      Отчасти соглашусь.

      Плагин плагину рознь и альтернативные решения в виде замены, всё того же плагина на код — это хорошо, но...

      Не стоит в такой замене искать панацею, не всяк блоггер продвинут, не всегда код сможет удовлетворить потребности, так как его (код), как правило, стоит подтачивать под свой ресурс...

      Вывод: следует всегда подыскивать, что-то лучшее, экспериментировать, набираться ума и опыта, одним словом — развиваться.

      ☺☺☺

      Ответить
    2. Dzmitry Roshchyn:

      Иван, избегать необходимо только реально бестолковых, громоздких плагинов, есть и полезные без которых не обойтись. Скорее всего не существует качественного блога на «Вордпресс» вообще без оных.

      Ответить
  8. Александр Борисов:

    Спасибо Сань. Я эту штуку убрал и избавился от лишнего плагина. Пробовал кодом, но была проблема. После оставления коммента, человека то перекидывало куда надо, а вот если он возвращался на страницу где оставил коммент, то не видел "Ваш комментарий ожидает проверки! А по идее должен видеть!

    Ну и если включить модерацию комментариев, то каждого комментатора не перекидывает вниз на странице после того как он нажал на кнопку «Отправить комментарий». И получается человек не понимает, оставил он коммент или нет. Возможно это только у меня.

    Попробую твой код.

    Ответить
    1. Юлия:

      Я когда оставляла Саше первый комментарий, то у меня тоже не было видно что «комментарий ожидает проверки». Я уж знаю что в этом случае нужно сразу страницу перезаргузить. Возвращаешься вроде как на страницу еще до того, как происходили какие-то действия. После перезагрузки появляется ожидающий комментарий.

      Но это было очень давно, может у него уже по другому.

      Ответить
    2. Иван:

      Все потому что страница кэшируется и когда нажимаешь стрелку назад, человек возвращается на страницу без перезагрузки, на ту, что сохранилась в кэше. Вот и вся беда.

      Ответить
  9. Дмитрий:

    Спасибо Саша! Очень полезная информация, так как плагины действительно зло. Особенно для хостинга jino)))

    Ответить
    1. Иван:

      Так уходите от jino, вон я сижу на majordomo и не парюсь, проблем вообще нет и сайт держит нагрузку как надо быть.

      Ответить
    2. Dzmitry Roshchyn:

      Услугами Jino не пользовался, но слухов и отзывов про этот хостинг много видел, так понимаю он подкупает своей ценой, за остальное не скажу. Хотя его смело рекомендуют для блоггеров новичков, скажем для начала пути вполне себе нормальный провайдер.

      Ответить
  10. Ирина:

    Александр, я плохо понимаю смысл использования одного плагина взамен другому.

    У Вас сказано, что можно обойтись без плагина «Comment Redirect by Yoast», но сделать это можно при помощи плагина «Exclude Pages from Navigation».

    В чем разница?

    Ответить
    1. Александр Бобрин:

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

      Ответить
  11. Алексей:

    Спасибо, Александр, за статью. На неделе сделаю обязательно, так как у меня на блоге пока еще не предусмотрен редирект при первом комментарии. Однако Иван правду сказал на счет PHP и плагина... Хорошо бы как-нибудь сделать анализ временной с плагином и без него.

    Ответить
    1. Александр Бобрин:

      Алексей, я не буду спорить на счет анализов всяких. Вы просто скачайте любой плагин и загляните внутрь.

      Ответить
      1. Алексей:

        «Вы просто скачайте любой плагин и загляните внутрь.»

        Заглядывал и не раз. Только не знаю к чему этот совет.

        Ответить
  12. Александр:

    Согласен с Александром Борисовым. Человек оставил коммент, а его перекидывает на какую-то страницу — Спасибо, блаблабла.

    И не понятно. Вернуться обратно — только стрелкой браузера. А там в комментах никакого сообщения. Человек в недоумении.

    В общем, убрал я его...

    А нагружают блог гораздо больше загрузка рекламы и сам код страницы, плагины берут мало.

    И очень много зависит от хостера. На джино мучался, перешёл на Хостенко — всё летает.

    Ответить
    1. Иван:

      Делайте принудительное обновление страницы и будет все ок. Вся беда в том что браузер кэширует страницу и потом при возврате подгружает ее из кэша.

      Ответить
    2. Юлий:

      Александр, кому как, а мне нравится и спасибо, и «блаблабла». Видишь уважение со стороны автора сайта. Вдобавок реклама своих продуктов.

      Допускаю, что такое не всем нравится, но сейчас это становится стандартом оформления сайта. Тем более что всего один раз эта страница появляется.

      Ответить
  13. Белан Константин:

    Привет, Саш! Большое спасибо за код, давно его искал. Себе поставил — все прошло на ура, теперь на один плагин меньше.

    Ответить
  14. Александр:

    Кто-нибудь мерял, на сколько реально уменьшилась нагрузка на блог при смене плагина на код?

    Ведь плагин — тот же код, только встраивается автоматически и имеет типа интерфейс пользователя.

    Ответить
    1. Юлий:

      Александр, вот Вы напишите статью, как это измеряется, я и попробуют. Я например не знаю, как проводить такие сравнения. На самом деле с удовольствием бы провёл такие сравнения.

      У плагинов намного бОльший код, и все плагины очень разные.

      Ответить
    2. Dzmitry Roshchyn:

      Ничего себе сравнение, кусок кода и целого плагина, дающие одинаковый результат. Во первых плагины могут давать такие лаги на блоге, что народ мается потом, а в чём дело спрашивают, вроде все работало путём.

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

      Ответить
  15. Юлия:

    Попробую и я себе сделать такую страницу. Давно хотела такой код найти. Нашла Вас. Спасибо! 🙂

    Про плагины... Было бы интересно почитать новую статью про плагины. Старую уже давно читала. Что сейчас у себя применяете?

    Ответить
  16. Popovses:

    Александр, скажите, почему вы отказались от плагина кэширования?

    Ответить
    1. Александр Бобрин:

      Просто мне делали новый дизайн и здесь этот плагин не требуется, скорость работы и так отличная.

      Ответить
      1. Popovses:

        Согласен. 200-300ms — хорошая скорость для WordPress, но если вы поставите плагин кэширования (рекомендую Hyper Cache), то сократите ее до 60ms, примерно. К тому же, нагрузка на хостинг упадет.

        Ответить
  17. Popovses:

    Увы, приведенный код не будет работать.

    Точнее, тот, что у вас на скрине будет, а тот что в листинге — нет.

    Например, в строчке

    'count' => true

    Произошла автозамена символа «>» на «>», то есть должно быть

    'count' => true

    И так по всему коду.

    Ответить
    1. Popovses:

      Оу, у вас стоит фильтр в комментариях. Выходит будто я продублировал код)

      Гляньте в листинг, что приводите, поймете, о чем речь.

      Ответить
      1. Александр Бобрин:

        Popovses, я понял проблему. Сейчас исправил, все должно работать.

        Ответить
  18. Жук Юрий:

    Интересно! Про такой код еще не слышал.Установлю, пожалуй. Помню раньше использовал плагин, потом удалили из-за большого их количества.

    Ответить
  19. Александр:

    Отличная возможность отказаться от еще одного плагина, но вот на моей теме почему-то не работает. Не может ли быть помехой плагин кеширования?

    Ответить
    1. Popovses:

      Нет, не может.

      Ответить
      1. Александр:

        То есть отказ в работе кода скорее всего из-за самой темы установленной на блоге?

        Ответить
        1. Popovses:

          Возможно. А может и из-за других плагинов.

          Здесь нужно смотреть, что именно не работает. Может ошибки какие-то.

          Ответить
  20. Артур:

    Вопрос может быть не в тему, но что у вас за плагин для карты сайта стоит. Тот который stemap.xml

    Ответить
    1. Александр Бобрин:

      Артур, All in One SEO PAck

      Ответить
      1. Артур:

        Благодарю!

        Ответить
  21. Никита Волков:

    Спасибо, огромное! Уже сделал! Отлично, наверное, работает! Пока люди не жаловались. Давно хотел это сделать, но не хотел ставить плагин, а тут такое замечательное решение при помощи кода и всё не сложно) Очень доходчиво! Спасибо вам!

    Ответить
  22. Александр:

    У меня интересный шаблон на блоге, не устанавливаются коды и многие шаблоны. Начинает съезжать все. А вот на втором блоге благодаря данному посту я смог выкинуть один лишний плагин. Побольше бы таких статей и возможно я бы смог убрать половину плагинов с блога

    Ответить
  23. Юлий:

    Немножко странно получается: чтобы сделать переадресацию без плагина нужен ... плагин «Exclude Pages from Navigation» для скрытия страницы из основного меню.

    Ответить
    1. Александр Бобрин:

      Юлий, он в любом случае нужен!

      Ответить
      1. Юлий:

        Я понимаю, что этот плагин нужен. Его сначала ставят с целью скрытия некоторых страниц, а потом он пригождается и в переадресации после первого комментария. Но я встречал сайты, которые не скрывали страницу «Спасибо за первый комментарий». Наверно, блоггеры не знали, что можно скрыть её.

        Ответить
  24. Николай:

    Попробовал установить код и он у меня не корректно срабатывает.

    Скорее всего причина в установленном у меня плагине WordPress Thread Comment, который реализует древовидные комментарии на блоге (в админке я их отключил)

    Переадресация после установки кода происходит, но новая страница отображается как ответ на комментарий, то есть в этом окне, это не красиво и не корректно.

    Жаль, пришлось вернуть всё на место.

    Если у кого есть похожие проблемы и вы их решили, напишите ответ пожалуйста.

    Ответить
  25. Анна:

    Спасибо за пост. Как раз сейчас и занимаюсь уменьшением количества плагинов на своём блоге.

    Ответить
  26. Евгения Куварина:

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

    Ответить
  27. Евгений:

    Вот этот интересно надо избавиться от плагина будет -1 плагин, поставлю этот код, спасибо!

    Ответить
  28. Никита Волков:

    Здравствуйте, Александр! Давно поставил, но хотел бы спросить, а как проверить работает ли страница благодарности?

    Ответить
    1. Александр Бобрин:

      Здравствуйте, Никита. Просто напишите тестовый комментарий с новым e-mail

      Ответить
  29. Denis:

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

    Ведь меньше плагинов меньше нагрузка на блог.

    Ответить
  30. Юлия Рыж:

    Да, пост был очень даже полезен, как и все остальные Ваши статьи. А что Вы там обещали про то, чтоб разместить статью о самом необходимом для блогера наборчике дополнений для сайта? Мы запомнили и ждем!

    Ответить
  31. Елена:

    Добрый день! У меня файл functions.php заканчивается далеко не на ?>.

    Я уже пыталась находить последний ?> и ставить код перед ним, но тогда начинает выдавать ошибку 300.

    Пыталась вставлять код и просто в конце — то же самое. Как можно выйти из ситуации?

    А плагин мне не подходит, так как я подарочную страницу оформляю в хтмл-редакторе и просто забрасываю в папку public. То есть плагин и вордпресс не видят мою «левую» страницу.

    Ответить
    1. Александр Бобрин:

      Елена, поставьте в середине, после какого-нибудь другого кода.

      Ответить
    2. Dzmitry Roshchyn:

      Он может быть без в конце либо с ?> или без него, тут от шаблона и от рук много зависит. Семь раз отмерь, один раз отрежь, необходимо всегда внимательно читать статью, а главное делать как в ней написано.

      Ответить
  32. Игорь:

    Вау,очень хорошо.Это лучше чем плагин.обязательно воспользуюсь

    Ответить
  33. Никита:

    Привет! А вот у меня этот скриптик не работает!! Выдает ошибку и пишет «хидер» уже отправлен. Установил плагин, все прекрасно заработало. =) Не жалуюсь

    Ответить
  34. Анна:

    Александр! Код вместо плагина это конечно хорошо, но обновляя WP мы обновляем плагины. А как быть с обновлениями кода?

    Ответить
    1. Александр Бобрин:

      Анна, здесь код вставляется в файлы темы, при обновлении WordPress файлы темы не затрагиваются.

      Ответить
      1. Анна:

        Александр, т.е. множество кодов, которые мы ставим вместо плагинов — в обновлении не нуждаются. А плагины соответственно периодически обновляем, правильно понимаю?

        Ответить
        1. Александр Бобрин:

          Да, Анна.

          Ответить
  35. Никита:

    Спасибо большое! Избавился от очередного плагина!

    Ответить
  36. Артем:

    Вот себе на блог сейчас думаю поставить эту переадресацию. Воспользуюсь вашей статьей как подсказкой.

    Ответить
  37. Петр:

    Спасибо. Очень полезная статья!

    Ответить
  38. Грымза:

    А как сделать чтобы после КАЖДОГО комментария появлялась страница благодарности? без плагина конечно

    Ответить

Ваш комментарий

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

© 2024 Блог Александра Бобрина. Создание сайта и заработок в интернете · Копирование материалов сайта без разрешения запрещено
Политика конфиденциальности | Пользовательское соглашение