Плагин «Автоматическая вставка контента в текст топика (AutoInjector)»
Плагин позволяет на основе заданных правил вставлять внутрь текста топика практически любой контент: контекстную рекламу, баннеры, коды биржей ссылок, различные блоки информации, графические элементы, видео и т.п. Вставлять контент можно в любую позицию текста топика. Кроме того, с помощью плагина можно заменять часть текста топика на свой контент, например, скрывать ссылки/фото/видео при соблюдении некоторых условий.
Вставка/замена контента происходит “на лету” перед отдачей страницы пользователю. В базе данных топик хранится в неизменном виде, поэтому автор топика при редактировании не видит этот контент и не сможет его удалить/изменить.
Демо
Демо. Возможности плагинаДля тестирования используйте учетную запись:
логин: autoinjector
пароль: autoinjector
Краткое описание
Позицию вставки контента можно задавать 2 способами:1. Указанием смещения относительно начала/конца текста топика. При этом смещение можно задавать либо абсолютным значением кол-ва символов от начала/конца топика, либо указанием процентов от общей длины топика. Например, чтобы вставить блок контекстной рекламы в середину топика, достаточно указать смещение 50% от начала или конца топика. Плагин корректно рассчитывает место вставки контента, не разрывая теги и предложения, т.е. вставка происходит всегда в конце предложения.
2. Указанием места вставки на основе какого-то HTML-тега в тексте. При этом контент можно вставлять перед тегом, после тега или вместо тега. Имеется возможность указать: обрабатывать все вхождения данного тега в текст или же только определенные по счету вхождения. Примеры: вставить контент перед каждым изображением в тексте, вставить контент после последнего изображения, заменить все ссылки на свой контент, заменить все видео на свой контент и т.п.
Контент, подлежащий вставке в текст топика, может представлять из себя JS-код/HTML-код/простой текст.
Кроме текста непосредственно в самом топике, плагин может обрабатывать также короткий текст из списка топиков в блоге.
Вставку/замену контента можно регулировать набором условий, т.е. вставка/замена будет осуществлена только, если этот набор условий выполняется.
На данный момент реализованы след. условия:
- авторизован пользователь или нет (true/false)
- находимся в списке топиков или нет (true/false)
- URL блога (include/exclude)
- рейтинг блога (=, <, <=, >, >=, between)
- логин автора топика (include/exclude)
- рейтинг автора топика (=, <, <=, >, >=, between)
- id топика (include/exclude)
- кол-во символов в топике (=, <, <=, >, >=, between)
- рейтинг топика (=, <, <=, >, >=, between)
- логин текущего пользователя (include/exclude)
- рейтинг текущего пользователя (=, <, <=, >, >=, between)
- сколько дней прошло с момента публикации топика (=, <, <=, >, >=, between)
- текущие дата и время (=, <, <=, >, >=, between)
- текущая дата (=, <, <=, >, >=, between)
- текущее время (=, <, <=, >, >=, between)
- текущий день недели (=, <, <=, >, >=, between)
Любые из этих условий можно группировать между собой с помощью логических операторов “И” и “ИЛИ” с неограниченным уровнем вложенности.
Примеры использования плагина (кейсы)
- По мнению некоторых интернет-маркетологов размещение блока контекстной рекламы в середине топика ведет к повышению CTR. При этом, чтобы не нервировать чрезмерной рекламой постоянных посетителей сайта, необходимо этот блок с рекламой вставлять в середину топиков, только если с момента публикации топика прошло больше недели, чтобы постоянные посетители, подписанные на этот блог, успели прочитать топик без рекламы.
- Необходимо мотивировать посетителей сайта регистрироваться. Для этого для неавторизованных пользователей в блоге “Отзывы” необходимо заменять все ссылки на надпись “[ссылка]”, при нажатии на которую, появлялось бы окно с авторизацией/регистрацией. А также вместо всех картинок в топике вставлять заглушку со ссылкой на авторизацию/регистрацию.
- Необходимо мотивировать посетителей сайта писать отзывы. Для этого для всех пользователей во всех топиках в блоге “Отзывы” надо справа вверху отображать блок с большой кнопкой “Написать свой отзыв”, текст топика должен обтекать этот блок слева. При нажатии на эту кнопку авторизованные пользователи будут перемещаться на создание топика, а неавторизованные на авторизацию/регистрацию.
- В ближайшие выходные для участников сообщества будет проходить какое-то мероприятие. Необходимо ближайшие 4 дня в начале всех топиков на сайте выводить анонс этого мероприятия.
- Каждый вечер с 18-00 до 22-00, кроме выходных в нашем чате консультирует крутой специалист. Необходимо в этот период времени в начале топиков блога “Вопрос-ответ” выводить информацию об онлайн-консультировании со ссылкой на чат.
- и т.д.
71 комментарий
По-умолчанию и в короткой и в полной версии, но можно указать условие:
Да и в целом, это имеет смысл, т.к. это сделает плагин более гибким, особенно если эта доработка несложная
В которых хранится контент для вставки? Если так, то нет там никаких парсеров — все содержимое файла вставляется в текст топика.
контент для вставки хранится в файлах
текст топика — в БД
перед выводом страницы в браузер все это миксуется плагином на основе заданных правил
вы говорите что это не фильтры смарти, не средствами жс, не посредством парсера лс, не парсинг готовых компилированных файлов. что же это?
только в jevix-e все это сделано на алгоритме, похожем на конечный автомат.
я сделал немного по-другому, но принцип тот же — посимвольный разбор текста
далее обработка текста топика
и возврат в шаблон объекта $oTopic с новым текстом
немного о разном говорили -)
К платным расширениям отзывы могут оставлять только покупатели. Как быть, если я его купил? Провокация конкурентов. Хотя, данный плогин это своеобразное ноухау. А вот мой отзыв, для тех, кто сомневается…
В файлах replace-link.txt и replace-video.txt прописываете контент-заглушки для ссылок и видео соответственно
2. Можно ли показать содержимое этих файлов, реализованных на демо сайте Вашего плагина?
1. Да.
2.
Не забудьте создать каталог media в корне и положить туда файл no_video.jpg
Все.
Робот яндекса не умеет регистрироваться и авторизоваться -)
Но я готовлю обновление — там можно будет задать регулярное выражение для поиска места вставки.
Спасибо за хороший и полезный плагин, пишите еще!
этот плагин с комментариями не работает
В текущем плагине много чего придется переделывать и это будет не «немножко расширить».
Правильнее было бы для комментариев делать отдельный плагин.
Никаких обещаний давать не буду. Писать подобный плагин для комментариев пока не собираюсь.
У меня есть сомнения, что такой плагин для комментариев будет востребован. Можно провести опрос:
Кто «за» плагин «Autoinjector для комментариев» — плюсуйте этот коммент
К тому же Вы правы — учитывая количество продаж Вашего плагина могу предположить, что народ просто не вкурил, какой он полезный и гибкий. Потому и на покупку плагина для комментариев будет короткая очередь.
Однако, представьте себе сайт, в котором по 300-500 коментов к каждому топику. Почему бы через каждые 20-30 топиков блок не вставлять?
Очень бы хотелось видеть расширение плагина не только на текст топика, но и на комментарии.
Сообщите стоимость доработки.
Полагаю что ответ «Да», но лучше уточнить ))
Сначала глаза испугались настраивать, но Вячеслав проконсультировал (хотя там консультировать по чеснаку и нет необходимости — все и так понятно).
Спасибо за разработку!
Условие «Авторизован пользователь или нет» можно применять, например, для того, чтобы плагин скрывал в топиках ссылки/видео или еще что-то для неавторизованных пользователей.
autoinjector.lsplugins.ru/blog/info/3.html?force-mobile=on
если пользователь не авторизован, то только в куках можно запоминать кол-во просмотров/кликов
пользователь может в любой момент почистить куки и счетчик будет сброшен, либо зайти на сайт с другого браузера/устройства
Да и не планировал такого делать, тоже
А вот кол-во просмотров топика — такого функционала в движке вроде нет.
Задача заменять текст заглушкой до определенной даты.
Но этот текст не обернут в какой-либо тег.
Если обернуть его в «новый» тег типа
<wait>Текст</wait>
и прописать его в условиях замены, сработает правило или нет? Надо ли новый тег заносить в Jevix?да