Добрый день!
На само деле мой вопрос касается virtuemart3, но я очень надеюсь, что разница небольшая, и вы сможете помочь.
Встала передо мной задача сделать количество категорий в строке различным для разных категорий в VirtueMart 3. Сам я в программировании ничего не понимаю. Надеюсь, может тут кто поможет.
Сделано следующее:
1 - в таблице virtuemart_categories создано поле categories_per_row
2 - в файле /administrator/components/com_virtuemart/views/category/tmpl/edit_categoryform.php добавлена строка
<?php echo VmHTML::row('input','COM_VIRTUEMART_CATEGORY_FORM_CATS_PER_ROW','categories_per_row',$this->category->categories_per_row,'','',4); ?>
чтобы в админке при редактировании категории была графа для изменения значения в таблице
3 - в файле /administrator/language/ru-RU/ru-RU.com_virtuemart.ini добавлено
COM_VIRTUEMART_CATEGORY_FORM_CATS_PER_ROW="Количество категорий в строке"
для красоты
4 - в administrator/components/com_virtuemart/tables/categories.php добавлено
var $categories_per_row = null;
для связи этого параметра с бд. работает на ура, все, что задается в админке прописывается в бд.
И вот тут начинаются проблемы, потому, что я ни разу не понимаю, как при выводе категории заставить сайт обращаться к этой таблице.
На примере дефолтного шаблона пытаюсь разобраться. Вывод категории расписан в /components/com_virtuemart/views/category/tmpl/default.php
вот тут
echo ShopFunctionsF::renderVmSubLayout('categories',array('categories'=>$this->category->children));
а для товаров тут
echo shopFunctionsF::renderVmSubLayout($this->productsLayout,array('products'=>$products,'currency'=>$this->currency,'products_per_row'=>$this->perRow,'showRating'=>$this->showRating));
Понятно, что смотря по аналогии надо добавить categories_per_row, пробовал, недостаточно видимо. Пробовал кучу разных вариантов, уж и не припомню. Прошу помощи))))))