Публикация топиков и сообщений из CMS

Автор leksus, 28 января 2009, 22:58:08

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

leksus

На самом деле, у меня не CMS как таковая, а Framework (CakePHP), но сути это не меняет, будем считать, что это самописная CMS.

Вопрос вот в чем - есть сайт, есть некая база логических единиц (вещь). Нужно, чтобы посетители оставляли отзывы к любой из этих вещей путем постинга сообщений в соответствующую вещи тему, параллельно обсуждая ее. Все сообщения темы выводятся с помощью SSI под описанием вещи. Но! хочется, чтобы посетители могли писать отзывы не заходя на форум, под учетной записью "гость". В SSI для 1.1.7 таких функций нет, поэтому я полез в БД разбираться, чтобы попробовать постить в БД напрямую, минуя движок форума. Походу дела возникло много вопросов, и я подумал, что, возможно, ктото решал похожую задачу до меня, ну или есть какие-то готовые решения, которых я не нашел.

Собственно, есть ли у кого мысли или какие-то решения?

Dmitry_Milk1

Аналогичная задача.

Возможно без гостей, но с требованием одобрения отзыва модератором.

ДОстаточно ли просто добавить записи в {db_prefix}topics и {db_prefix}messages (возможно, с approve=0)?
Или я так наступлю на какие-нибудь грабли?

leksus

Dmitry_Milk1, я сам уже давно с этим разобрался, функцию накатал, даже вот описал ее:
http://smfedit.ru/xaki-i-dorabotki/posting-forum-smf-sayta-ssi.html
Правда, она подходит только для версии SMF 1.1.x.

Dmitry_Milk1

Как то слишком уж "паяльником на коленке" получается :(

Ладно б, если только одну запись вставить в одну таблицу, а тут целая связка. Какое-нибудь изменение структуры таблиц при очередном апгрейде версии форума - и махом перестанет работать. Или того хуже, работать не перестанет, а начнет заносить не те значения не в те поля. Хотя, этого можно избежать явным указанием списка полей в инсерте.

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

leksus

Мой хак относится к SMF 1.1.x, поэтому я сильно сомневаюсь, что разработчики будут менять структуру БД. Сейчас все усилия направлены на версию 2.0 и там возможны изменения. А в обновлениях к ветке 1.1.х идут только заплатки на обнаруженные дыры, ну и ошибки в коде правят.

Ну, это ладно, мое дело предложить :)

Dmitry_Milk1

Цитата: leksus от 17 января 2011, 11:32:28
Ну, это ладно, мое дело предложить :)

Да, спасибо, конечно. ;)

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

Stern

leksus, а куда делся пост про удаление сессий из индекса яндекса и рамблера, который был опубликован на вашем сайте?
МышЫ плакали, кололись, но продолжали жрать кактус...