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

Shiffer

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
А существует ли какое-нибудь универсальное средство что бы заставить работать Content плагины в JoomShopping?
В том числе, которые работают вставкой специального тэга в текст (например ExtraVote и Product Snapshot).
« Последнее редактирование: 08.08.2013, 22:59:01 от ELLE »
*

nevigen

  • Moderator
  • 10445
  • 863 / 25
  • http://n*****n.com
включить в настройках Использование плагинов в описании
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Shiffer

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
включить в настройках Использование плагинов в описании
К сожалению, это почему-то не включает контентные плагины.
Пробовал писать что-то типо
Код
JPluginHelper::importPlugin( 'content', 'имя плагина' );
но не помогает.
Судя по похожим темам, их надо отдельно инициализировать.. только как?
*

vgromov

  • Осваиваюсь на форуме
  • 15
  • 8 / 0
Увы, по-умлочанию, контентные плагины JS включить можно только в описании товара, на весь контент, генерируемый JS, это не распространяется. Мне пришлось пользоваться template override (у подавляющего большинства разработчиков JS и так используется template override, я думаю).  Выводим все в буфер, затем буфер обрабатываем плагинами, и выводим результат:
Код: php
ob_start();
// << normal template output goes here
$tmp = ob_get_clean();
// process generated content with J! plugins in the context of an article, and render it
echo JHtml::_('content.prepare', $tmp, '', 'com_content.article');
« Последнее редактирование: 13.08.2013, 12:40:17 от vgromov »
*

Shiffer

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
vgromov, а вы не могли бы подробнее объяснить что-куда писать?
Если вставить этот код например в продукс.пхп, то просто слетает шаблон, но плагины не включаются.
*

vgromov

  • Осваиваюсь на форуме
  • 15
  • 8 / 0
...а вы не могли бы подробнее объяснить что-куда писать?
Если вставить этот код например в продукс.пхп, то просто слетает шаблон, но плагины не включаются.

Объясню, как у меня сделано через template override. Можно, конечно, и оригинал шаблона JS покоцать, но с каждым обновлением есть опасность потерять изменения, я в "ядреную" функциональность лезть не люблю очень.

1) Создаем template override для компонента JS. Копируем все, что лежит в _корень вашего сайта_/components/com_jshopping/templates/default в _корень вашего сайта_/templates/_ваш темплейт_/html/com_jshopping
2) Далее издеваемся над файлами, лежащими в _корень вашего сайта_/templates/_ваш темплейт_/html/com_jshopping. Заходим в эту директорию.
3) Допустим, вам нужно, чтобы все, что выводится в вид "товар", было обработано плагинами контента. Открываем файл /product/product_default.php - это "корень" вида "товар" - остальные файлы там - подключаемые куски отображения. В файле видим:

В начале:
Код: php
<?php 
defined( '_JEXEC' ) or die();
$product = $this->product;
?>
<?php include(dirname(__FILE__)."/load.js.php");?>
<div class="jshop productfull">
// ........ the rest of the body .....

В конце:
Код: php
echo $this->_tmp_product_html_before_review;
include(dirname(__FILE__)."/review.php");
echo $this->_tmp_product_html_end;?>
</div>

Нам нужно вывод перенаправить не в страницу, а в буфер:
В начале:
Код: php
<?php 
defined( '_JEXEC' ) or die();
$product = $this->product;
/// start buffered output
ob_start();
?>
<?php include(dirname(__FILE__)."/load.js.php");?>
<div class="jshop productfull">
// ........ the rest of the body .....

В конце:
Код: php
echo $this->_tmp_product_html_before_review;
include(dirname(__FILE__)."/review.php");
echo $this->_tmp_product_html_end;?>
</div>
<?php
// end buffered output, get buffer contents, clean buffer
$tmp = ob_get_clean();
// process generated content with J! plugins in the context of an article, and render it
echo JHtml::_('content.prepare', $tmp, '', 'com_content.article');
?>

Должно заработать.
Параллельно - пока писал - заметил у себя ошибку в предыдущем примере - не ob_get_start(), конечно, а ob_start();
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Мы починили поиск для JoomShopping

Автор Dimidrol-Pruper

Ответов: 101
Просмотров: 32634
Последний ответ 24.06.2024, 14:20:58
от kit2m2
Плагин - Вывод значения поля из таблицы продуктов в корзине JoomShopping

Автор draff

Ответов: 3
Просмотров: 1526
Последний ответ 26.02.2024, 07:00:01
от kit2m2
Плагин - Товар на складе или Товар под заказ для JoomShopping [Скачать]

Автор kit2m2

Ответов: 58
Просмотров: 10230
Последний ответ 18.05.2023, 12:59:00
от Akeksandr
[Решено] Комплект товаров JoomShopping - конструктор

Автор vgromov

Ответов: 96
Просмотров: 29550
Последний ответ 14.12.2022, 15:21:24
от kit2m2
Функционал сравнение товаров в JoomShopping

Автор falur

Ответов: 53
Просмотров: 14458
Последний ответ 22.08.2022, 09:54:16
от kit2m2