Добавление нового поля в блоги

Здравствуйте еще раз, нужно добавить доп поле, что-бы оно выводилось на странице создания блога, и на странице самих блогов, рядом с вступить\покинуть и т.д… Поле я добавил и туда и туда, оно даже работает.
Только вот выводит инфу если ее предварительно добавить напрямую в БД.
То есть имеем столбик blog_country, который нужно(можно) заполнить при создании блога, так вот если туда что-то вписать и сохранить то запрос в БД не пойдет и в столбике ничего не появится.
А вот если я заполню в БД этот столбик ручками то все прекрасно выводится.

В движке ActionBlog.class.php добавил:
$_REQUEST['blog_country']=$oBlog->getCountry();


В шаблоне ActionBlog в add.tpl добавил:
<input type="text" id="blog_country" value="{$_aRequest.blog_country}" class="input-text input-width-full" />


В шаблоне блогов blog_list.tpl:
<th class="cell-country">{$oBlog->getCountry()}</th>


Насколько я могу что-то в этом понять, нужно в ActionBlog.class.php добавить какой-то запрос…
Помогите пожалуйста сделать, что-бы столбик в БД прописывался при создании(редактировании) блога.
Ну или хоть ткните носом ламера, сам додумаю дальше… :)

13 комментариев

avatar
Считайте помидорки:
Расширяем сущность блога новым плагином добавляя новые поля в БД и соответсвтенно новые методы в сущность для их получения и записи(Мапер), и новые методы в модуль для их обработки. Сюда приплюсуйте изменение поведение стандартного экшина ActionBlog за счет добавления хука в модуле.
Надеюсь не сильно заумно. :)
avatar
*хука в плагине *sorry*
avatar
Я не смогу плагин написать… Только костылями что-то добавить, убрать-переделать…
avatar
Простите, ничего не понял… :(
Я вроде не совсем тупой, но реально ни черта не понял…
avatar
Тогда вам прийдется проделать все тоже самое только с файлами движка (Структура плагина практически в точности копирует структуру движка), и при первом же обновлении… Либо делайте правильно, либо закажите у кого-то, по другому нет смысла, имхо.
avatar
Спасибо, вопрос немного не по теме:
НЕ могу разобраться с дампом скл, я хочу что-бы при активации плагина(дада, я почти доделал его) сразу создавалась пустая строка blog_country в уже готовой таблице blog.
В голову лезет только это:
INSERT INTO `prefix_blog`
SET `blog_country` = ``

Но че-то не получается, пишет ошибку… Как правильно написать запрос? :)
avatar
Вы вставляете запись а вам нужно добавить поле.
avatar
Точно, все сделал innstal.sql и uninstal.sql, теперь при активации плагина он создает поле в таблице, а при деактивации удаляет это строку… ппц я крут, хаха! :)))
avatar
Сейчас мой плагин умеет:
При активации создает поле blog_country(char(30) null) в таблице prefix_blog
Выводит содержимое этого поля в blog_list.tpl рядом с вступить\покинуть и т.д.
Выводит это содержимое на странице создания\редактирования блога
При деактивации стирает поле blog_country

Если в pma ввести значение поля например Россия, то он покажет это изменение.
А вот как сделать что-бы это содержимое можно было редактировать прямо на сайте я не понимаю… :(
  • sila
  • 0
avatar
смотрите как работает eventEdit в екшине.
avatar
не понимаю как правильно написать hook для моего плагина, все что можно перепробовал, то ошибки пишет, то просто не работает…
avatar
Небольшой отчет… :)
Вообщем нашел все что нужно добавить и где добавить, то есть если добавить эти записи в двиг то все работает. Сделал то что хотел.

На счет плагина, что-то все равно не получается… Половина работает, половина не работает…
Видимо не получится у меня написать плагин… :(
Вот так, спасибо за то что практически заставил делать все самому! :)
Возможно как нибудь вернусь к плагину…
  • sila
  • 0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.