Реальный пиарCmsJoomla → Добавление материалов пользователями в Joomla 1.5

Добавление материалов пользователями в Joomla 1.5

Прошло 2.5 года с момента публикации материала Добавление материалов пользователями, многое изменилось, вышла Joomla 1.5 и руководство слегка устарело. Поэтому я решил написать вторую статью на эту же тему, но уже непосредственно применительно к Joomla 1.5. Данная статья описывает вопрос предоставления пользователям прав на добавление и публикацию материалов в Joomla 1.5. Т.е. чтобы сразу после регистрации на сайте пользователь автоматически получал возможность добавлять материалы на сайт.

По умолчанию в Joomla после регистрации пользователю присваивается группа Registered. Однако пользователи этой группы не имеют прав на добавление материалов, поэтому чтобы дать пользователю возможность добавлять материалы необходимо его перевести в группу Author. Либо каким-то образом предоставить группе Registered права на добавление материалов.

Если пользователей, которым вы хотите разрешить добавлять материалы немного, то проще всего перевести их в группу Author. И не производить никаких модификаций. Если же необходимо дать права на добавление материалов всем зарегистрированным пользователям на сайте, то проще всего расширить права группы Registered выполнив небольшую модификацию.

Примечание: статья посвящена обсуждению способов предоставления возможности добавления материалов зарегистрированными пользователями. Вопросы возможности предоставления прав на модификацию или публикацию материалов не рассматриваются.

Изменение прав группы Registered

Данный метод основан на добавлении группе Registered прав на добавление материалов. Важно заметить, что данная модификация распространяется не только на новых пользователей, но и уже на существующих пользователей группы Registered
Находим в файле /libraries/joomla/user/authorization.php код:
$this->addACL( 'com_content', 'publish', 'users', 'super administrator', 'content', 'all' );
Вставляем после него следующие строки:
$this->addACL( 'com_content', 'add', 'users', 'registered', 'content', 'all' );
$this->addACL( 'com_content', 'edit', 'users', 'registered', 'content', 'own' );

Сохраняем измененный файл
Открываем файл /components/com_content/controller.php, находим и удаляем в нем код:
if ($user->get('gid') < 19) {
JError::raiseError( 403, JText::_('ALERTNOTAUTH') );
return;
}
Сохраняем измененный файл
Открываем файл /components/com_content/views/article/view.html.php, находим и удаляем в нем код:
if ($user->get('gid') < 19) {
JError::raiseError( 403, JText::_('ALERTNOTAUTH') );
return;
}
Сохраняем измененный файл
В административной панели, открываем менеджер меню, выбираем User menu и меняем уровень доступа к пункту добавления материалов с Special на Registered.

После проведения указанных модификаций у всех авторизованных пользователей в пользовательском меню станет доступен пункт Submit an Article и они смогут добавлять материалы на сайт (с премодерацией). Если же, необходимо, чтобы пользователи могли не просто добавлять материалы, но и сразу их публиковать, то при внесении изменений в файл /libraries/joomla/user/authorization.php необходимо добавить помимо указанных 2-х строк, еще одну:
$this->addACL( 'com_content', 'publish', 'users', 'registered', 'content', 'all


Источник: http://joomlaportal.ru

Рекомендуем



Создание кнопки для визуального редактора в Joomla 1.5 Весьма серьезным преимуществом Joomla перед другими системами является довольно широкие возможности расширения базового функционала системы посредством различного рода расширений


Репозиторий файлов на Joomla средствами Apache html назначают файлы, содержимое которых будет автоматически подставляться в начало и конец страницы репозитории и служат для достижения разнообразных оформительских эффектов


Блог на Joomla! - реально?! Стандартным функционалом, предоставляемым Joomla, является возможность сразу, при написании и публикации материала, задавать ключевые слова и описания для материала и нив коем случае нельзя пренебрегать этими возможностями