2014-01-16 4 views
2

В Joomla 3 Мне нужно указать разные шаблоны администрирования для статей K2 на основе категории, чтобы иметь возможность указывать разные дополнительные поля и облегчать добавление элементов для участников контента.Joomla 3: как переопределить шаблоны администратора K2?

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

Он очень похож на переопределяющие интерфейсные шаблоны k2. Вот статья, описывающая его:

http://getk2.org/documentation/tips-a-tricks/221-custom-admin-templates-and-calling-specific-extra-field-data

Однако, когда я делаю это и изменить шаблон администратора категории, нет никаких изменений от значения по умолчанию. Моя мысль в том, что что-то в этом коде, который модифицирует администратора файл/компоненты/com_k2/Views/предмет/view.html.php не совместим с Joomla v.3:

//Look for specific admin template file 
jimport('joomla.filesystem.folder'); 
$componentPath = JPATH_SITE.DS.'components'.DS.'com_k2'.DS.'templates'; 
$componentFolders = JFolder::folders($componentPath); 
$db =& JFactory::getDBO(); 
$query = "SELECT template FROM #__templates_menu WHERE client_id = 0 AND menuid = 0"; 
$db->setQuery($query); 
$defaultemplate = $db->loadResult(); 

if (JFolder::exists(JPATH_SITE.DS.'templates'.DS.$defaultemplate.DS.'html'.DS.'com_k2'.DS.'templates'.DS.'admin'.DS.$item->catid)) 
{ 
$this->_addPath('template', 
JPATH_SITE.DS.'templates'.DS.$defaultemplate.DS.'html'.DS.'com_k2'.DS.'templates'.DS.'admin'.DS.$item->catid); 
} 

Уже, я не знаю, что нет таблицу в моем db с именем "templates_menu". Это сразу же вызвало ошибку. Я полагаю, что это должно быть template_styles ", и, скорее всего, столбцы должны быть client_id и id. Выполнение этих изменений устранило ошибку как минимум.

Кроме того, я считаю, что путь неверен в инструкции« if ». "каталог не требуется.

Однако, даже после внесения этих изменений, похоже, не будет тянуть в моем новом шаблоне на стороне администратора.

Я надеюсь на Joomla/PHP эксперт (который я нет) может весить здесь. Я мог ошибиться в своих предположениях относительно имени пути и таблицы.

Edit: изучая это дальше, я решил пойти вперед и СОЗДАТЬ таблицу, указанную в исходном коде плаката. Теперь у меня есть таблица в моей базе данных e758z_templates_menu.

Тем не менее, я все еще не получаю ничего, пытаясь заставить Joomla использовать настраиваемый шаблон для администратора, связанный с идентификатором категории. Он по-прежнему использует значение по умолчанию.

ответ

0

Можете ли вы не просто создать разные дополнительные поданные группы, а затем назначить правильные категории в нужную категорию?

Если вы изменили файлы ядра k2, то любые изменения будут удалены при обновлении, что при новых обновлениях с одним кликом будет весьма вероятным.

Вы должны быть в состоянии изменить стандартный вид админ со стандартным шаблоном переопределение, т.е. копия

/administrator/components/com_k2/views/category/default.php

в

/administrator/templates/YOUR_ADMIN_TEMPLATE/hOK_ADMIN_TEMPLATE/html/com_k2/category/default.php

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

Смежные вопросы