Плагин BlogContent - каждому блогу свой контент.

Плагин позволяет ограничить публикацию определенного типа контента в конкретные блоги.
Может пригодится когда вам необходимо чтобы в блоге был только определенный контент, например только фотосеты или только топики. Теперь каждый блог может быть наполнен только одним типом контента и представлять собой по сути самостоятельный раздел сайта.

После установки плагина в основном меню (и в админке aceAdminPanel) появляется ссылка на страницу с настройками на которой можно установить соотношение типа топика и блога. После настройки при добавлении определенного типа топика, плагин будет исключать из списка те блоги куда размещать данный тип не разрешено. Также можно настроить типы контента для вновь создаваемых и персональных блогов.

Причина создания данного плагина кроется в том, что я планирую к реализации серию плагинов расширяющих стандартный тип топика (wiki, events, plases). И чтобы не множить разделы и акшины под каждый, решил просто добавить фильтрацию к текущим. Возможно кто-то захочет сделать свой тип топика подобным образом.

Буду очень рад замечаниям и пожеланиям по функционалу.

Скачать:
livestreetcms.com/addons/view/393/
shlykov.info/uploads/blogcontent.zip

З.Ы. В ближайшее время готовится к публикации плагин Wiki — страницы с историей, быстрой линковкой и ЧПУ.

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

avatar
Спасибо! Крайне полезный плагин.
avatar
private function getTopicTypes(){
        $sql = "SELECT COLUMN_TYPE

в ActionAdmin? несовсем корректно с точки зрения движка.
avatar
А что нужно: маппер, модуль, сущность? Смысл разводить жир и множить функции обертки? Метод и так использует стандартные объекты. Повторного использования данного метода не предполагается, а другим объектам он не нужен. Я не вижу для него другого места, предложите своё?
avatar
маппер же. с логикой в классе.
дело не в разведении жира а в человеческой структуре.
avatar
в этом весь ЛС. модули «все в одном файле» — это ВП.
avatar
Если строго следовать паттернам ООП, то маппер(data mapper) — это прослойка между БД и объектом, но тут объектов ни каких нет. Да и логики тут ни какой нет, и результат запроса не зависит ни от каких внешних параметров, и метод достаточно изолирован и не изменяет состояние системы. Мне нужна всего лишь одна строка о свойствах поля таблицы! Писать лишний код, множить файлы и углублять стек вызовов ради чего?

«Человеческая структура» тогда оправдывает себя, когда у вас множество запросов, объектов и вариантов взаимодействий, она позволяет всё разложить по полочкам и не запутаться. В данной ситуации этого всего нет. Средства должны соответствовать цели.

З.Ы. С удовольствием поспорю дальше над этим вопросом))
avatar
Спасибо очень нужный плагин.

Помогите решить проблему. Установил плагин, но выдается ошибка на странице добавления топика.

Warning: array_key_exists() expects parameter 2 to be array, boolean given in /home/name/str/site/public/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 63

Warning: in_array() expects parameter 2 to be array, null given in /home/name/str/site/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 64

Warning: array_key_exists() expects parameter 2 to be array, boolean given in /home/name/str/site/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 63

Warning: in_array() expects parameter 2 to be array, null given in /home/name/str/site/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 64

Warning: array_key_exists() expects parameter 2 to be array, boolean given in /home/name/str/site/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 63

Warning: in_array() expects parameter 2 to be array, null given in /home/d/dminardim/toontema/public_html/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 64

Warning: array_key_exists() expects parameter 2 to be array, boolean given in /home/name/str/site/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 63

Warning: in_array() expects parameter 2 to be array, null given in /home/name/str/site/plugins/blogcontent/classes/hooks/HookSortBlogs.class.php on line 64
avatar
Ругается на эти строчки

if (!array_key_exists($oBlog->getId(), $aConfig) ){
if (!in_array($sAction,$aConfig['default']))

Помогите решить проблему.
avatar
версия LS?
попробуйте зайти в страницу настроек и сохраните настройки, должно заработать. если ругается что не может сохранить настройки — проверьте папку /tmp в корне сайта на доступность для записи
avatar
Версия 0.5.1.

Переустановил ls, но все по прежнему, в разделе blogcontent пишет:

Типы контента в блогах: /templates/compiled/new-jquery/9950a3ebfef6146c8d0f4c3e4022249069648499.file.index.tpl.php on line 50.

Шаблон стоит new-jquery.
avatar
Заработал плагин! Просто нажимаю на ошибки, а так работает-)

Спасибо за отличный плагин.
avatar
В официальном каталоге так и не появился? Если не секрет, с чем это связано?
avatar
вот уж не знаю. не прошел модерацию почему-то?
avatar
он и не попадал на модерацию, т.к. у него не стоит флаг «Показывать в каталоге»
avatar
ой йой. чото запарил, не обратил внимание на эту галочку. исправил.
avatar
Убраны ошибки, протестирован на совместимость с LS 1.0
avatar
Когда через админку заходишь в настройки, вот что выдает.
Warning: in_array() expects parameter 2 to be array, null given in C:\Program Files\VertrigoServ\www\templates\compiled\synio\e6d33e1bc87f4afbe54ac957cabb84134cb2b528.file.index.tpl.php on line 100

LS 1.0 пробовал с базовым шаблоном …
avatar
Вот только две кнопки в навигации отображает в место одной. Повторяет…
avatar
Разобрался в Конфиге. + пришлось добавить фразы в пакет яз. рус и англ. Автор поленился…
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.