0 Пользователей и 1 Гость просматривают эту тему.
  • 17 Ответов
  • 493 Просмотров
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Как получить поле мета автор?
которое есть приредактировании категории в разделе метаданные

хочу при выводе перехватить это поле
Мой проект для жены - Вязание.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #1 : 07.04.2014, 20:36:06 »
up
Мой проект для жены - Вязание.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #2 : 09.04.2014, 08:17:03 »
таблица в базе _categories
в ней мне нужен столбец - metadata
в нем содержимое: {"author":"содержимое","robots":""}

пытаюсь получить по аналогии с тем что есть в коде по другим элементам

Код
$mm1 = json_decode($this->item->metadata);
$mm=$mm1->{'author'};
echo $mm;

и ничего не получаю, подскажите, где ошибка? не хотелось бы получать содержимое ячеек этого столбца через прямой запрос к базе, так как я думаю что при формировании вывода блога категории эти данные уже получены sql запросом, надо их всего лиш получить из выборки
Мой проект для жены - Вязание.
*

Grigory S.

  • Давно я тут
  • 659
  • 69 / 0
  • (с)
Re: Как получить поле мета автор (php)?
« Ответ #3 : 09.04.2014, 08:21:13 »
Может вот так
Код: php
$mm=$mm1->author; 
Не задав правильный вопрос, невозможно получить правильный ответ.
Для "спасибок" существует кнопочка "+".
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #4 : 09.04.2014, 09:27:05 »
не, так не подходит

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

Код
$db =& JFactory::getDBO();
$query="запроснебудуписать";
$db->setQuery($query);
$met = $db->loadResult();
$obj = json_decode($met);
$avt=$obj->{'author'};

вот так все работает, но ведь это лишние запросы
если на блоге выводится 10 материалов, то тогда это лишних 10 запросов
Мой проект для жены - Вязание.
*

passer

  • Давно я тут
  • 876
  • 73 / 3
Re: Как получить поле мета автор (php)?
« Ответ #5 : 09.04.2014, 10:13:28 »
Ну загляните в переменную. Чего тут гадать  то.
Код: php
var_dump($this->item->metadata);
$mm1 = json_decode($this->item->metadata);
var_dump($mm1);
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #6 : 09.04.2014, 10:59:01 »
выводит вот что:

Код
JDocumentHTMLstring(53) "{"robots":"","author":"","rights":"","xreference":""}"
object(stdClass)#3801 (4) {
  ["robots"]=>
  string(0) ""
  ["author"]=>
  string(0) ""
  ["rights"]=>
  string(0) ""
  ["xreference"]=>
  string(0) ""
}

но это данные из таблицы _content а не _categories
хотя все правки делаю в файле /com_content/category/blog_item.php
Мой проект для жены - Вязание.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #7 : 09.04.2014, 11:01:19 »
хотя ведь вроде логично? если я правлю в blog_item (тоесть для каждго item материала) то и данные получаю для этого материала

но как там получить данные для категории?
Мой проект для жены - Вязание.
*

passer

  • Давно я тут
  • 876
  • 73 / 3
Re: Как получить поле мета автор (php)?
« Ответ #8 : 09.04.2014, 11:25:53 »
Понятия не имею. Если у вас $this->item это материал, то может $this это категория. В нее загляните.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #9 : 09.04.2014, 11:29:59 »
вот так:
Код
var_dump($this->category->metadata);
$mm2 = json_decode($this->category->metadata);
var_dump($mm2);
уже дает данные для категории, но почему то поля автора пустые

JDocumentHTMLobject(JRegistry)#3785 (1) {
  ["data":protected]=>
  object(stdClass)#3792 (2) {
    ["author"]=>
    string(0) ""
    ["robots"]=>
    string(0) ""
  }
}
object(stdClass)#3809 (2) {
  ["author"]=>
  string(0) ""
  ["robots"]=>
  string(0) ""
}
Мой проект для жены - Вязание.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #10 : 09.04.2014, 11:36:56 »
понял почему пустые)0
так как это дает поля для текущей, активной категории

а не для категорий материалов
Мой проект для жены - Вязание.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #11 : 09.04.2014, 11:59:22 »
как указать что надо для родительской катгории?

вот так для текущей:
Код
var_dump($this->category->metadata);
$mm2 = json_decode($this->category->metadata);

а как для родительской?

вот так:
Код
var_dump($this->parent_category->metadata);
$mm2 = json_decode($this->parent_category->metadata);

неверно, тоест парент категория это не родительская
?
Мой проект для жены - Вязание.
*

passer

  • Давно я тут
  • 876
  • 73 / 3
Re: Как получить поле мета автор (php)?
« Ответ #12 : 09.04.2014, 12:15:40 »
Ну если уж мы гадаем, а не смотрим в API. Варианты  $this->category->parent,   $this->category->parent(), $this->category->getParent(), $this->category->get('parent') (в стиле joomla). Можно еще по гадать.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #13 : 09.04.2014, 12:16:28 »
дак подскажите где смотреть апи? я не могу найти где про это почитать
Мой проект для жены - Вязание.
*

passer

  • Давно я тут
  • 876
  • 73 / 3
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #15 : 09.04.2014, 12:20:11 »
вы издеваетесь? я понимаю что надо искать в интернете. на планете земля, и прочее
может что-то конкретнее есть?
апи большое, и я занимаюь допиливанием Joomla практически в первый раз, и даже не представляю как там задать вопрос в поиск чтобы получить более мене близкий к теме ответ....
Мой проект для жены - Вязание.
*

passer

  • Давно я тут
  • 876
  • 73 / 3
Re: Как получить поле мета автор (php)?
« Ответ #16 : 09.04.2014, 13:07:02 »
Мля. C Joomla только раз работал. Google "joomla category parent" второй пункт в выдаче $parent = $category->getParent();
... $this->category->getParent()...
Угадал похоже.
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Как получить поле мета автор (php)?
« Ответ #17 : 09.04.2014, 14:09:58 »
если вот так:
Код
var_dump($this->category->getParent()->metadata);
$mm2 = json_decode($this->category->getParent()->metadata);
var_dump($mm2);
то выдает
string(0) ""
NULL

а если вот так:

Код
var_dump($this->category->getParent());
$mm2 = json_decode($this->category->getParent());
var_dump($mm2);

то выдает вообще все из родительских категорий, оф форум Joomla заражен, Google на него не пускает, в апи Joomla вообще написано что getParent() дает родительскуй категорию и все, ни примеров исползования, ничего..

быть может как то можно сузить? как прописать что нужен столбец именно метадата?
Мой проект для жены - Вязание.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как сделать порядок мета тегов?

Автор Meiir

Ответов: 4
Просмотров: 548
Последний ответ 11.05.2017, 17:52:33
от vipiusss
Получить информацию о доставке на странице продукта

Автор annaoomph

Ответов: 0
Просмотров: 284
Последний ответ 16.08.2016, 22:20:30
от annaoomph
Код загрузки модуля в дополнительном поле материала

Автор goga_pgasovav

Ответов: 10
Просмотров: 594
Последний ответ 05.05.2016, 06:37:58
от sabnok
Получить ID и/или alias верхней категории

Автор goga_pgasovav

Ответов: 4
Просмотров: 568
Последний ответ 26.03.2016, 10:08:14
от midav
Сменить порядок вывода Мета-Тег

Автор darkghost

Ответов: 4
Просмотров: 450
Последний ответ 20.01.2016, 00:17:15
от darkghost