Хак на Content – Индивидуальный материал

Данный хак тестировался на Joomla 1.0.15, но думаю с приложенной головой будет работать и на более старых версиях

Иной раз необходимо опубликовать материал для конкретного пользователя, что бы его мог видеть только тот, кому он предназначен.

Использовать будем мало кем используемое поле в базе данных created_by_alias

Открываем файл components/com_content/content.php на редактирование и ищем начало функции отображения материала на странице.

function show( $row, $params, $gid, &$access, $pop, $option='com_content', $ItemidCount=NULL ) {

Так как нам придется работать с пользователями добавляем в после функции код:

global $my;

идем далее и находим код:

$cache ->call( 'HTML_content::show', $row, $params, $access, $page );

заменяем данный код на:

if ($row->created_by_alias){
// Выводим статью только тем чья статья, и не забываем про Администратора ;)
 if (($row->created_by_alias==$my->name) || ($my->id==62)){
   $cache->call( 'HTML_content::show', $row, $params, $access, $page );
 }
}else{
   $cache->call( 'HTML_content::show', $row, $params, $access, $page );
}

На выходе получаем, что все статьи у которых в поле Псевдоним автора: введено Имя пользователя (таблица jos_users поле name), будет виден только пользователю у которого это имя совподает(если конечно он авторизован на сайте), администратор сайта будет видеть все статьи не зависимо от введенных имен в поле Псевдоним автора.

Вы здесь: Home Хаки Joomla 1.0.x & Joostina Хак на Content – Индивидуальный материал
форум форекс | микромрамор Микрокальцит.