In Joomla 3+ version, to initialise any model and to call them from another model or helper or view class/files, please follow instruction;
For example, you have a sample model class (as shown below) which exists on
root/components/com_mycomponent/models/gallery.php
or
root/administrator/components/com_mycomponent/models/gallery.php
Now, please use the below format initialising the gallery model and call the functions:
For example, you have a sample model class (as shown below) which exists on
root/components/com_mycomponent/models/gallery.php
or
root/administrator/components/com_mycomponent/models/gallery.php
// No direct access to this file defined('_JEXEC') or die('Restricted access'); // import the Joomla modellist library jimport('joomla.application.component.modellist'); /** * Gallery Model */ class MycomponentModelGallery extends JModelList { /** * Method to fetch all list of published galleries * * @return string An SQL query */ protected function getGalleryList() { .............. .............. return $items; }
Now, please use the below format initialising the gallery model and call the functions:
// Use JPATH_ADMINISTRATOR instead of JPATH_SITE to call administrator model classes; // Include the file path; JModelLegacy::addIncludePath(JPATH_SITE . '/components/com_mycomponent/models', 'MycomponentModel'); // Initialising the included class; $gallery_model = JModelLegacy::getInstance('Gallery', 'MycomponentModel'); $galleries = $gallery_model->getGalleryList();