Adding the Component Category Tree

9 年 2 个月 前 - 9 年 2 个月 前 #998 Joris Ceelen
Adding the Component Category Tree was created by Joris Ceelen
Hi

I find myself using the following two classes a lot, unfortunately Component Creator does not set them up automatically when adding a Joomla Category field to your components table, but then it is easy.
api.joomla.org/cms-3/classes/JCategoryNode.html
api.joomla.org/cms-3/classes/JCategories.html

I like these functions and the way you can navigate the category tree
$cats=JCategories::getInstance('Form_nutrition_fact_groups');
$cat=$cats->get($catid);
$params=$cat->getParams();

how to enable this ? ( it would be great if Component Creator would generate this file too!)

Create a file category.php in the front end under 
JPATH_COMPONENT/helpers/...

here is an example of my file in
components/com_form_nutrition_fact_groups/helpers/category.php,
I think it speaks for itself
<?php
/**
 * @package     Joomla.Site
 * @subpackage  com_content
 *
 * @copyright   Copyright (C) 2005 - 2015 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */
defined('_JEXEC') or die;
/**
 * Content Component Category Tree
 *
 * @since  1.6
 */
class Form_nutrition_fact_groupsCategories extends JCategories
{
   /**
    * Class constructor
    *
    * @param   array  $options  Array of options
    *
    * @since   11.1
    */
   public function __construct($options = array())
   {
      $options['table'] = '#__form_nutrition_fact_groups` ';
      $options['extension'] = 'com_form_nutrition_fact_groups';
      $options['field'] = 'nutrition_fact_cat_id';
      parent::__construct($options);
   }
}
thanks!!
Last edit: 9 年 2 个月 前 by Joris Ceelen.

Please 登录注册一个帐号 to join the conversation.

创建页面时间:0.048秒
核心: Kunena 论坛

We use cookies so that you can place orders and we can provide a better service. You can control the use of cookies at the individual browser level. If you reject cookies, you may still use our website, but your ability to use some features or areas of our website may be limited.