Главная > Coding, Блог > Обратная связь — добавляем полезняшки на сайт

Обратная связь — добавляем полезняшки на сайт

Давненько хотел такую штуку сделать. Смысл простой — дать пользователю возможность связаться с разработчиками в виде отправки хотя бы текcтового сообщения. Простая формочка с полем для ввода текста сообщения, для обратного емэйла, ну и по желанию капчи, чтоб боты не спамили. Вообще, надо сказать, сайт для меня становиться полезен еще и тем, что здесь я могу собирать как бы в одном месте своего рода заготовки. Не успел я сделать страницу feedback, как такая же функциональность понадобилась в другом проекте. Чем же полезен такой функционал конкрентно на моем сайте? Во-первых, если он когда-нибудь станет популярным и посещаемым, то благодарные пользователи смогут оставлять свои пожелания. Или неблагодарные свой негатив. А пока ресурс не обрел такую популярность, применение данной фиче тоже найдется. Можно ее использовать, как записную книжку. Независимо от местанахождения, я смогу сам себе написать. Например, нашел какой-нибдуть интересный ресурс/статью/файл, и нужно донести ссылку до дома (иль еще куда). Посылаем, и вуаля. Приходим домой (иль еще куда), заходим в раздел для чтения сообщений обратной связи, находим нужную ссыль. Выглядеть это будет так.

Находиться страница для прочтения поступивших сообщений будет в скрытом разделе. Из соображений приватности, конечно))
Если приглядеться, можно заметить, что URL в последнем сообщении является гиперссылкой. Это делаю на лету при показе, хотя разумнее пожалуй будет сохранять в базу в таком виде, чтоб снизить нагрузку.
Кстати, установил классный плагинчик для подсветки синтаксиса языков программирования. Называется WP-Syntax. В качестве пробы, размещу в этом посте функцию, написанную на php, для парсинга строки на предмет содержания в ней URL и преобразование этих URL в гиперссылки (оборачивание в тег <a>)

function replaceURLs($subject) {
   $delimiters = '\\s"\\.\',';
   $schemes = 'https?|ftps?';
 
   $pattern = sprintf('#(^|[%s])((?:%s)://\\S+[^%1$s])([%1$s]?)#i', $delimiters, $schemes);
   $replacement = '$1<a href="$2">$2</a>$3';
 
   return preg_replace($pattern, $replacement, $subject);
}
  1. Пока что нет комментариев.
Подписаться на комментарии по RSS