Тэги к тикетам
Хотелось бы почитать, что предложит многоуважаемое сообщество, а в конце обсуждения я напишу свои «хотелки». Всем спасибо.
Заранее благодарен за участие.
Заранее благодарен за участие.
Комментарии: 49
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Тэги для любой страницы, а не только тикетсов в Modx'e реализуется посредством добавления 1 tv специально предусмотренного в Modx'e вида, 1 сниппета для преобразования результатов и одной страницы для поиска ресурсов по ним.
Страница профиля для пользователей — 2-мя строчками в .htaccess и ~2мя сниппетами, один из которых уже заточен под это — pdousers.
Для чего делать из легкого инструмента еще один битрикс — искренне непонятно.
P.s. поймите меня правильно, это здорово, что сообщество хочет и может вливать валюту в развитие дополнений и оплату труда разработчику, но приоритеты, на мой взгляд, выбраны не слишком удачно, особенно учитывая тот факт, что для тех, кому данные инновации не нужны, все равно будут подгружаться лишние таблицы и обработчики.
Вот как реализованы теги у меня (может, кому пригодится):
1. Дополнительное поле «tags»
Параметры ввода: Авто-метка (можно и простой строкой, по желанию)
2. Сниппет «tags», делающий теги ссылками (для последующего поиска по ним)
3. Вывод в чанке
— где &tagsPage — параметр, определяющий айди страницы поиска по тегам для формирования ссылки
Ну и дополнительно, для «полного спектра услуг»:
4. Создаем страницу "Поиск по тегам" с псевдонимом tag, где будем выводить все теги, удовлетворяющие запросу:
— где сниппет GET перехватывает выбранный тег в адресной строке.
GET
5. Дописываем .htaccess, чтобы адресная строка поиска приняла вид site.ru/tag/Название_тега
Но я вот о чем хочу сказать. Тиккеты подхватывают при установке пдо-тулз. Отдельный пакет. И как выше сказано, они обладают уже мощным функционалом. Вот допустим я хочу комментарии на сайте. Чеб мне не скачать только соответствующий сниппет тиккетов без расширенных ресурсов, например… Отдельным пакетом. Ну короче идея в том, чтобы при увеличении функционала в тиккетах он становился более модульным, чтобы можно было скачать то, что нужно и не качать остального. Но это так, размышления на тему.
По поводу все большей монструозности в тикетах, это имхо проблема нахождения баланса между универсальностью и модульностью дополнений. Если можно, то было бы логично делать в отдельном дополнении и ничего не вшивать, впрочем как и ТикетМета, да и ТикетКомментс, ничего плохого нет и в допиливании Таглистер, единственная проблема тут возможна будет с использованием библиотек Pdotools. Вообще грамотное ТЗ половина дела, тут думать надо.
Другое дело, что отдельным сниппетом можно реализовать вывод, да. Но, в отличие от тех же комментариев, теги вряд ли логично выставлять отдельно со стороны бэкэнда.
Нормализация — тут уже придется подключать словари и не только. Вообще, если нужен будет морфологический анализ, имхо, это очень серьезный и сложный вопрос реализации, заслуживающий полноценного и отдельного дополнения.
А что имелось ввиду под «исключением тега»?
Для тех, кто радеет за минимализм и отсутствие «лишних таблиц» — вы и так подгружаете с тикетами все компоненты из пакета Тикетс, pdoTools, Jevix и Minifyx. Главное, обходиться без утрирования.
Что касается самих Тикетс в нынешнем виде, с кармой, комментариями и прочими фишками, — ребята, которые строят хорошие «юзер-френдли» ресурсы, — оценивают это дополнение, как одно из самых удобных, функциональных и быстрых на фоне аналогов в друпале и вордпресе.
— к чему это сказано? С тем же успехом можно было сказать что-то в духе: «ребята, которые работают на битриксе, оценивают битрикс как один из самых удобных и быстрых функционалов», но вряд ли от их мнения он таким становится.
Ну и да, к слову: большого ума, как по мне, чтобы реализовать более быстрый аналог друпалу и вордпрессу в текущей их ипостасти и не требуется. Ровно до тех пор, пока легкие дополнения Modx'a не стали «универсальным решением на все случаи жизни из коробки для ленивых»
Что же до подгружаемых элементов с пакетами tickets — повторюсь, вопрос в востребованности и максимальной необходимости для большинства. И теги ими, на мой взгляд, не являются.
Про большой ум и битрикс — я рад за тех, кто все это может. Допиливать, переделывать и прочее. Я не могу. Мне нужно готовое дополнение. И мне нужно мнение, которое поможет сделать его удобным. Вопрос целесообразности для меня не стоит.
Было бы здорово, чтобы годные программисты писали и допиливали для себя.
Готовое дополнение (без морфологии) — tagLister. Со всеми наворотами — разве что писать с нуля и, на мой взгляд, на порядок целесообразнее отдельным дополнением, т.к. те же теги потенциально пригодятся не только в тикетах (галереи, фото-видео и пр пр).
Поэтому просто расскажу, как _надо_ делать тегирование.
Нужны:
1. Тикетс;
2. 2 tv;
3. 1 плагин;
4. 1 таблица.
Создаём раздел с тикетами. Называем его, к примеру «Теги» :-)
Создаём tv. В него будем записывать теги для страницы.
На сохранение ресурса (у которого д.б. теги), в плагине, смотрим в этот tv, разбираем теги и на каждый создаём тикет в нашем разделе «Теги». У этих тикетов-тэгов д.б. tv-шка, в которую мы в исходном виде записываем текст тега.
Потом записываем в нашу таблицу id ресурса и id тикета-тега (сколько тегов, столько и записей в таблице), не забывая перед этим очистить все прошлые записи для этого ресурса (ну вдруг мы отредактировали ресурс и какой-то тег удалили. Чтобы не заморачиваться с логикой — просто удаляем все записи для этого ресурса, а потом сохраняем текущие).
Выборку статей с данным тегом делать pdoResource'ом.
Собственно всё.
Я бы собрал пакетик на днях, да только болею я.
В общем, в чём профит.
На каждый тег будет отдельный ресурс. Да, если тегов 1000, то и ресурсов будет 1000. Если кого-то такой вариант не устраивает, то… не мои это проблемы)
Смысл в том, что у каждой страницы-тега можно редактировать урлы, контент, тайтлы, дескрипшены, да и вообще что душа пожелает — это же обычный ресурс. Это просто рай для любого более-менее грамотного сеошника. Вы в своих интернет-магазинах (и не только) сможете просто нереально расширить семантику, поднять траффика и позиции по куче низкочастотников. Достаточно небольшого уникального текста символов на 300, уникального тайтла и дескрипшена на каждой легированной странице. Вот и всё.
Все остальные варианты тегирования, в большинстве случаев, будут только во вред.
Между прочим, такие темы на платных закрытых вебинарах задвигают. А я вам готовый инструмент практически дал. Не упускайте шанс, как говорится.
Всем добра :-)
Главное не «тегирование из коробки», а «правильное тегирование». Правильное в коробку завернуть как раз не проблема, было бы оно правильным :-)
Может быть на следующей неделе соберу. Хз когда выздоровлю.
Плюс проверка слова, для предотвращения повторения одних и тех же слов с разными окончаниями (машина, машину, машины) и подставление уже имеющихся.
Единственное место, где они будут нужны — это вывод списка тегов на странице. И здесь вопрос решается очень и очень просто — pdoResource.
В pdoTools'е всё уже предусмотрено. Так что скорости будут максимальными
Но лично я подразумевал, что процесс создания тегов контролируется администратором сайта, а не пользователями. Пользователям вообще нельзя теги давать, иначе они в них нах*есосят. Либо по-умолчанию эти теги делать неопубликованными, а потом постоянно в ручную проверять на корректность
Просто сделать такой интерфейс универсальным несколько сложнее. Из коробки будет заточенность только под бутстрап.
А какое поле ты подразумеваешь, говоря «имеющееся»? Какое-нибудь наименее используемое у ресурса? Я из таких знаю только Атрибут ссылки. Но у него длина ограничена 255 символами.
Вот только сами теги надо создавать=заполнять самостоятельно, а пользователю давать их выбирать. + добавлять с премодерацией было бы правильно. Проще 1 раз промодерировать — дополнив необходимой информацией, склонениями, описанием.
Просто пока они мне не нужны были, а понадобятся тогда, когда свой интернет-магазин делать буду. А этого в ближайших планах нету
Ответ Василия был прост — запили и накидай реквесты на гитхабе.
Начал думать что надо и как это реализовать. Понял, что нет смысла вставлять теги в тикетс, потому что туда можно вставить только ущербные теги, иначе получится тикетс-монстр.
Например, теги нужны для того, что бы в сообществе выводить похожие статьи, но теги надо модерировать, хорошо бы запилить морфологический анализ статей для автотегирования, нужен словарь тегов с модерацией, нужен удобный отдельный интерфейс что бы все это рулить.
Вывод напрашивается сам собой — просто нужен отдельный мощный инструмент для тегов, которого для MODx пока что нет.
Как реализовать необходимый минимум описали выше.
Боюсь, там слишком многое нужно переработать, чтобы можно было делать дополнения как для MS2.
Чтобы с фронта добавлять тэги добавил плагин, который заполняет ТВ поле и таблицу компонента значениями:
Чтобы выводить во фронте поле добавил сниппет:
Чанк tpl.tvssTagsOptions:
В чанке с формой добавления/редактирования тикетов добавил:
Прикрутил к полю тэгов Select2, чтобы тэги было удобно заполнять и все.
Может кому пригодится =)