Помощь Характеристики товара в отдельный блок

Регист
28 Авг 2017
Сообщения
6
Симпатии
3
#1
Здравствуйте друзья! Прошу помощи, стоит задача вывести характеристики товара под вкладку-спойлер внизу страницы product.php, а остальную информацию, с кнопками добавления в корзину оставить на прежнем месте. С созданием вкладки проблем не возникло.
Соответственно, нашел что за что отвечает в layout_property,php
В product.php выводится все из файла layout_property,php строкой:
Код:
<?php echo $data['propertyForm'] ?>
в файле layout_property.php за показ характеристик отвечает строка:
Код:
<?php echo $data['htmlProperty']; ?>
которая в product.php самостоятельно не работает.

Были мысли создать layout_property2.php с единой строкой
Код:
<?php echo $data['htmlProperty']; ?>
и подцепить ее к product.php.
Как это сделать, собственными способностями додуматься - не могу.

Если есть вообще выход из этой ситуации, пожалуйста помогите.
Заранее - огромное, человеческое спасибо!

Ссылка на подопытного http://shop.ssdcam.ru
 

Wlad007

Модератор
Developer
Регист
14 Сен 2016
Сообщения
195
Симпатии
233
#2
Если не изобретать велосипед Вам поможет
Характеристики товаров для Moguta.CMS от Jstudio-Pro
перепишите его под страницу product.php - исправлений там будет не очень много
в выводе плагина изменить $item на $data
 
Регист
28 Авг 2017
Сообщения
6
Симпатии
3
#3
Если не изобретать велосипед Вам поможет
Характеристики товаров для Moguta.CMS от Jstudio-Pro
перепишите его под страницу product.php - исправлений там будет не очень много
в выводе плагина изменить $item на $data
Не подскажите, уже в установленном плагине, какой файл ковырять?
 
Регист
28 Авг 2017
Сообщения
6
Симпатии
3
#4
Пытаюсь разобраться. Если не прав, прошу поправить :dntknw:
Файл плагина "mg-plugins/js-property/index.php"
Так понимаю, что можно добавить вывод плагина в product.php по аналогии с выводом на Главную страницу.

Код вывода плагина нашелся на главной странице
Код:
<?php if(class_exists('JSProperty')): ?>[jsproperty id="<?php echo $item['id']?>"]<?php endif; ?>
Код вывода на главную страницу в файле index.php
Код:
      $mprod = new Models_Product();
      $sql = "SELECT * FROM `".PREFIX."jsproperty` WHERE to_index=1 AND active=1";
      $res = DB::query($sql);
      while($row = DB::fetchAssoc($res))
      {
        $t = unserialize(stripslashes($row["property"]));
        $wherep = "'".implode("','", $t)."'";
        $t = unserialize(stripslashes($row["category"]));
        $prod = $mprod->getProduct($id);
        file_put_contents(__DIR__."/log", print_r($prod, true));
       
        if(!in_array($prod["cat_id"], $t)) continue;
        $sql = "SELECT pup.property_id AS property_id,pup.value AS value FROM `".PREFIX."product_user_property` pup
        LEFT JOIN `".PREFIX."property` p ON p.id=pup.property_id
        WHERE pup.product_id=".DB::quote($id)." AND pup.property_id IN ($wherep) ORDER BY p.sort DESC";
        $res = DB::query($sql);
        while($row = DB::fetchAssoc($res)) {
          $p["name"] = $props[$row["property_id"]];
          $p["value"] = $row["value"];
          $property[] = $p;
        }
Если все верно, не разберусь что подправить под product.php :mda:
 

Wlad007

Модератор
Developer
Регист
14 Сен 2016
Сообщения
195
Симпатии
233
#5

Код вывода плагина нашелся на главной странице
Код:
<?php if(class_exists('JSProperty')): ?>[jsproperty id="<?php echo $item['id']?>"]<?php endif; ?>
попробуйте на странице продукта вывести такой шорт код
В плагине должен быть
набор ваших характеристик

Код:
<?php if(class_exists('JSProperty')): ?>[jsproperty id="<?php echo $data['id']?>"]<?php endif; ?>
если выведет набор ваших характеристик- тогда смело можно поставить в табы

если не выводит то править файл плагина template.php
 
Последнее редактирование:
Регист
28 Авг 2017
Сообщения
6
Симпатии
3
#6
если не выводит то править файл плагина template.php
Не выводит, оставляет пустое место.

В template.php шаблона, без вашей помощи мне не разобраться.
Он мал и для меня не понятен.
Ничего умнее не придумал, кроме как заменить в этом файле все item на data, результат нулевой.
Вернул все к истокам.
Код:
<?php if (!empty($property)) : ?>
<div class="j-property">
    <ul>
        <?php
        foreach($property as $item):
            if($item["value"] != ""):
        ?>
        <li class="j-property__data">
            <span class="j-property__title"><?php echo $item["name"]; ?></span>
            <span class="j-property__separator">:</span>
            <span class="j-property__value"><?php echo $item["value"]; ?></span>
        </li>
        <?php
            endif;
        endforeach;
        ?>
    </ul>
</div>
<?php endif; ?>
 

Wlad007

Модератор
Developer
Регист
14 Сен 2016
Сообщения
195
Симпатии
233
#7
попробуйте на странице продукта вывести такой шорт код
В плагине должен быть
набор ваших характеристик

Код:
<?php if(class_exists('JSProperty')): ?>[jsproperty id="<?php echo $data['id']?>"]<?php endif; ?>
если выведет набор ваших характеристик- тогда смело можно поставить в табы

если не выводит то править файл плагина template.php
Попробуйте так только добавьте свой набор характеристик без изменения кода плагина
и файлов шаблона
После этого если не выводится попробуйте в файле layout_property.php закоментируйте <?php echo $data['htmlProperty']; ?>
 
Регист
28 Авг 2017
Сообщения
6
Симпатии
3
#8
Попробуйте так только добавьте свой набор характеристик без изменения кода плагина
и файлов шаблона
После этого если не выводится попробуйте в файле layout_property.php закоментируйте <?php echo $data['htmlProperty']; ?>
Не отображается.
Закомментировал, не знаю правильно или нет
Блок с характеристиками перестал выводится как при удалении строки
Код:
<?php // echo $data['htmlProperty']; ?>
 

Wlad007

Модератор
Developer
Регист
14 Сен 2016
Сообщения
195
Симпатии
233
#9
Характеристики (набор из плагина )в каталоге выводятся?
 

Wlad007

Модератор
Developer
Регист
14 Сен 2016
Сообщения
195
Симпатии
233
#11
Да и в каталоге и на главной странице выводится

[/SPOILER]
Значит путём проб и ошибок пытайтесь вывести на странице продукта
Удочку я Вам дал - а рыбу ловить Вы уже сами
 

Wlad007

Модератор
Developer
Регист
14 Сен 2016
Сообщения
195
Симпатии
233
#13
Понял, спасибо. будем рыбачить!
Скорее всего(глянул мельком) придётся плагин переписывать
как вариант пробовать метод include
или подгонять файлы движка под Ваши нужды
посмотрите в этом файле(mg-core\models\product.php) прописан вывод характеристик для страницы product.php шаблона
ни кто не запрещает править его под Ваши нужды
 
Регист
28 Авг 2017
Сообщения
6
Симпатии
3
#14
Скорее всего(глянул мельком) придётся плагин переписывать
как вариант пробовать метод include
или подгонять файлы движка под Ваши нужды
посмотрите в этом файле(mg-core\models\product.php) прописан вывод характеристик для страницы product.php шаблона
ни кто не запрещает править его под Ваши нужды
Все тщетно, ничего не выходит. :no2:
 
Регист
28 Авг 2017
Сообщения
6
Симпатии
3
#15
Скорее всего(глянул мельком) придётся плагин переписывать
как вариант пробовать метод include
или подгонять файлы движка под Ваши нужды
посмотрите в этом файле(mg-core\models\product.php) прописан вывод характеристик для страницы product.php шаблона
ни кто не запрещает править его под Ваши нужды
Сможете помочь заставить этот плагин работать как мне нужно?
Сам бьюсь как рыба об лед, ничего не выходит. Знаний не хватает :not_i:
 
Сверху Снизу