Forums / National / Russian / Тех. поддержка / Комментарии для своих нужд

12>>>

Boss
#1 2009-07-28 19:09
Если я правильно понял, комментарии в движке COT и все что было до него не имеют жесткой привязки именно к страницам или другим типам публикаций на сайте. Это универсальный инструмент. Записываясь в базу каждый комментарий получает уникальный ID-номер (com_id) и код (com_code), ссылающийся на то что нужно. Все остальные ячейки таблицы относятся уже к самому комментарию - текст, время, юзер, IP и прочее.

Какие коды для комментариев мы имеем на сегодняшний день?

p216, p2, p112 и т.д. - это комментарии к страницам.
Формирование кода - $item_code = 'p'.$pag['page_id'];

v1, v10, v3 и т.д. - это комментарии к опросам.
Формирование кода - $item_code = 'v'.$id;

и, собственно, все. Правильно?

Хотя у меня в базе имеются коды и с другими буквами. Видимо остались от LDU и SED, т.к. в исходниках COT я не нашел обработок для других букв.

Но основной вопрос не в этом. Интересует такой момент. Я хочу использовать встроенную функцию комментариев для своего плагина. Идея в том, что я создаю комментарии той же общей функцией которая уже имеется в COT, при этом я лишь указываю свою букву в коде. При получении листинга комментариев потом я тоже не предвижу проблем. Ведь достаточно запрашивать комментарии с нужными кодами. Все верно?

Поскольку такая реализация означает привязку к ядру движка, хотелось бы узнать планы на будущее по комментариям. Что планируется в будущем? Коды p+номер и v+номер будут всегда? И вообще такой подход в создании и выводе комментариев останется в будущем? Кстати, может есть какие-то планы уже занять дополнительные буквы?
esclkm
#2 2009-07-28 20:23
согласен по поводу поднятого вопроса)))
порабы это немного поменять)))
чтобы в 2 разных поляэта инфа записывалась.
littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты
jcrush
#3 2009-07-28 20:53
Так же помниться был плагин чата для лду, так вот он на комментах строился и у меня куча инфы есть с другими буквами, этот чат приспосабливал под плагин анекдотов.
SEO блог: http://blog.stfw.ru/
Trustmaster
#4 2009-07-28 22:18
T3 FAQ, UserGal, MediaGallery и еще с десяток других плагинов. Поэтому в ближайшее время система комментов останется нетронутой, но к 1.0 надо будет её привести в нормальный универсальный вид.
May the Source be with you!
Boss
#5 2009-07-28 22:43
# esclkm : согласен по поводу поднятого вопроса)))
порабы это немного поменять)))
чтобы в 2 разных поляэта инфа записывалась.
Не понял про какие два поля речь? Если это предложение отказаться от общего поля com_code с разными кодами (буквами), то я против. Более универсальный инструмент ведь это наоборот более хорошо.

Добавлено 1 Минута спустя:

# Trustmaster : T3 FAQ, UserGal, MediaGallery и еще с десяток других плагинов. Поэтому в ближайшее время система комментов останется нетронутой, но к 1.0 надо будет её привести в нормальный универсальный вид.
Подобрее хотелось бы, какие изменения планируются.
Sergeich
#6 2009-07-28 23:12
Boss, я бы ввёл дополнительное поле, в котором указывалась привязка комента к тому или иному модулю сайта, а в старом поле останется уникальный номер комента (без всяких дополнительных букв). Это упростит работу сторонних плагинов, которые шерстят коменты, с одной стороны. С другой стороны, дополнительное поле с кодом модуля(плагина) позволит не задумываться о ситуации с совпадением префиксов у коментов.
Boss
#7 2009-07-29 01:47
Sergeich, Ведь у нас и так есть уникальные номера комментов (com_id). Они конечно нужны, но для вывода листинга они не несут никакой пользы. Добавлять еще одно поле где будет не уникальный номер, а номер той страницы, того опроса или любого своего модуля бессмысленно. Разве-что для некоторого изящества. ;-) Ну а в остальном... Ведь нам не нужно выводить одновременно комменты для разных модулей или разных страниц. Соответственно мы сформировали заранее номерок с буковой и нашли по нему записи в базе. По-моему все и так предельно просто.
This post was edited by Boss (2009-07-29 01:53, 14 years ago)
Sergeich
#8 2009-07-29 02:36
О, звиняюсь. Только что посмотрел структуру таблицы коментов, всё что я писал не нужно :). Пришёл к выводу, что нужно поменять только одно - принцип назначения буквенных префиксов, увеличить его до трёх букв и в правилах создания плагинов строго прописать, что префикс должен быть ровно три буквы, на оф.сайте завести некую библиотеку для разработчиков, в которой отмечать занятые варианты.
This post was edited by Sergeich (2009-07-29 02:46, 14 years ago)
Dayver
#9 2009-07-29 03:34
Может в ту секцию просто хук засандалить? а потом по нему любой плуг зацепится по нужной ему букве и без хака ядра.
Pavlo Tkachenko aka Dayver
Sergeich
#10 2009-07-29 04:20
А если "нужные буквы" у двух плагинов совпадут?
Dayver
#11 2009-07-29 07:08
ну дык ты ж сам предложил послать все на три буквы :D

кстати у E_Shop'a для седа зарезервирована буковка "s"
Pavlo Tkachenko aka Dayver
Boss
#12 2009-07-29 12:54
Подождите. :-) А разве там вообще где-то есть ограничения на буквы и их количество? Там ведь просто в функцию при записи комментария передается готовый код. И пофигу какой он будет. При считывании листинга комментариев также - передается в функцию код.

Главное вписаться в параметры ячейки com_code varchar(16).

Конечно создавать комментарии с такими кодами не стоит: my_best_plugin1, my_best_plugin2, my_best_plugin3 и т.д.

Но что-нибудь типа p_hw1, p_hw2, p_hw3, p_hw4, и т.д. пожалуй допустимо, и маловероятно что совпадет с чем-то.

pS: я тут подумал. А нафига нам вообще в com_code цифры? Для сортировки или для ссылки? Но и то и другое можно и без них сделать! Для ссылки можно использовать уникальный номер (com_id), сортировку делаем по полю времени добавления (com_date) комментария или тем же уникальным номерам (com_id).
This post was edited by Boss (2009-07-29 13:12, 14 years ago)
Trustmaster
#13 2009-07-29 15:31
А про нормализацию и разницу между строковыми индексами и целочисленными тут никто не слышал?
May the Source be with you!
Sergeich
#14 2009-07-29 22:56
нет :))
Trustmaster
#15 2009-07-30 01:19
Если очень кратко, то идентификатор 'pag31337' будет работать в разы медленнее, чем ('pages', 31337)
May the Source be with you!

12>>>