Форум русской поддержки Joomla!® CMS
05.12.2016, 12:35:32 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

[Решено] Вывод списка категорий в своём компоненте (достать параметры из [params] => {})

 (Прочитано 440 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ninth
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 59


[ 9 ]


« : 13.08.2014, 23:13:37 »

Доброго времени суток, помогите разобраться.

Есть массив:
Код
Array
(
   [0] => stdClass Object
       (
           [title] => Творчество
           [id] => 15
           [params] => {"category_layout":"","image":"images\/portfolio\/category\/Tv.png"}
       )
 
   [1] => stdClass Object
       (
           [title] => Разное
           [id] => 16
           [params] => {"category_layout":"","image":"images\/portfolio\/category\/R.png"}
       )
 
)

Как в ВИДЕ (default.php) добратся до параметра - "image":"images\/portfolio\/category\/Tv.png"?
...нужно просто достать ссылку на картинку...

Делаю так ...

Модель:
Код
<?php
defined('_JEXEC') or die;
 
jimport('joomla.application.component.modelitem');
class MyworksModelMyworks extends JModelList
{
    public function getMycategories()
   {
 
$db = $this->getDbo();
$query = $db->getQuery(true);
 
$query->select(array('title', 'id', 'params'));
$query->from('#__categories');
 
$query->where('extension = "com_myworks"');
$query->order('rgt');
 
$db->setQuery($query);
$query = $db->loadObjectlist();
 
       return $query;
}
}

Вид:
Код
<?php
 
defined('_JEXEC') or die('Restricted access');
 
jimport('joomla.application.component.view');
 
class MyworksViewMyworks extends JViewLegacy
{
   protected $mycategory;
 
   public function display($tpl = null)
   {
       $this->mycategory = $this->get('Mycategories');
 
       parent::display($tpl);
   }
}


default.php:
Код
<?php
defined('_JEXEC') or die;
?>
<?php foreach($this->mycategory as $category) : ?>
   <?php echo $category->params->get("image"); ?>
<?php endforeach; ?>

Выдаёт ошибку - "Fatal error: Call to a member function get() on a non-object in..."
« Последнее редактирование: 17.08.2014, 20:47:57 от b2z » Записан
Aleks.Denezh
Практически профи
*******

Репутация: +372/-4
Offline Offline

Пол: Мужской
Сообщений: 2762



« Ответ #1 : 13.08.2014, 23:21:09 »

Код
<?php foreach($this->mycategory as $category) : ?>
 <?php $params = new JRegistry( $category->params ); ?>
 <?php echo $params->get('image'); ?>
<?php endforeach; ?>
Записан
Aleks.Denezh
Практически профи
*******

Репутация: +372/-4
Offline Offline

Пол: Мужской
Сообщений: 2762



« Ответ #2 : 13.08.2014, 23:22:02 »

p.s. В Joomla 3.x эти строки
jimport('joomla.application.component.modelitem');
jimport('joomla.application.component.view');
ненужны!
Записан
ninth
Осваиваюсь на форуме
***

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 59


[ 9 ]


« Ответ #3 : 13.08.2014, 23:37:20 »

Нигде пример найти не мог.
Большое вам спасибо.
Записан
platonische
Давно я тут
****

Репутация: +0/-0
Offline Offline

Сообщений: 297


Парусные экспедиции vk.com/tc670


« Ответ #4 : 22.10.2015, 12:47:20 »

А как передать в функцию getMycategories параметр?
Чтоб в выборке он участвовал
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet