Вот кажись рабочий код:
Замени содержимое файла
/components/com_jshopping/templates/default/category/products.php
На код приведенный ниже:
<?php
/**
* @version 4.7.0 13.08.2013
* @author MAXXmarketing GmbH
* @package Jshopping
* @copyright Copyright (C) 2010 webdesigner-profi.de. All rights reserved.
* @license GNU/GPL
*/
defined('_JEXEC') or die();
$input = JFactory::getApplication()->input;
$category_id = $input->getCmd('category_id', '');
$user = JFactory::getUser();
$db = JFactory::getDBO();
$query = 'SELECT `usergroup_id` FROM `#__jshopping_users` WHERE `user_id`='.$user->id.'';
$db->setQuery($query);
$group_id = $db->loadResult();
?>
<?php if ($this->display_list_products && $group_id == '2' && $category_id =='20'){
$msg = 'У вас нету прав для просмотра данной категории';
$msg = "<div class='data' style='text-align:center;font-size:16px;font-weight:bold'>" . $msg . "</div>";
echo($msg);} else { ?>
<div class="jshop_list_product">
<?php
include(dirname(__FILE__)."/../".$this->template_block_form_filter);
if (count($this->rows)){
include(dirname(__FILE__)."/../".$this->template_block_list_product);
}else{
include(dirname(__FILE__)."/../".$this->template_no_list_product);
}
if ($this->display_pagination){
include(dirname(__FILE__)."/../".$this->template_block_pagination);
}
?>
</div>
<?php }?>
В данном куске кода идет установка параметров:
<?php if ($this->display_list_products && $group_id == '2' && $category_id =='20')
Где ты в $group_id == '2' указываешь ID группы для которой ты хочешь закрыть доступ, а в $category_id =='20' указываешь ID категории которую ты хочешь закрыть.
А тут ты выводишь текст и его стиль для надписи о запрете.
$msg = 'У вас нету прав для просмотра данной категории';
$msg = "<div class='data' style='text-align:center;font-size:16px;font-weight:bold'>" . $msg . "</div>";
Вот такой костыль получился, думаю более опытные пользователи подскажут в оптимизации кода, или посоветуют более лучший результат.