Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

вывод страны производителя в катании


Recommended Posts

Всем доброго дня!

У меня стоит OCMod добавляющий страну производителя в карточку товара.

Я пытаюсь по аналогии вывести страну производителя в категориях.

Вывод в карточке:

catalog/controller/product/product.php
            $data['country'] = $product_info['country'];,
            $data['text_country'] = $this->language->get('text_country');

 

catalog/view/theme/*/template/product/product.tpl

        <?php if ($country) { ?>
            <?php echo $text_country; ?> <?php echo $country; ?>
        <?php } ?>

Я вывывожу в категории так:

catalog/controller/product/country.php

      'country'      => $result['country'],

catalog/view/theme/*/template/product/country.tpl

        <?php if ($country) { ?>
            <?php echo $text_country; ?> <?php echo $country; ?>
        <?php } ?>

Ошибка - не определена переменная

Что не так я делаю?

переменная

'country'      => $result['country'],

 

 

Надіслати
Поділитися на інших сайтах


Давайте сверимся.

В контроллере catalog/controller/product/category.php 

- в массив данных товара добавили переменную: 'country'      => $result['country']

- там же в основную функцию добавили языковую переменную: $data['text_country'] = $this->language->get('text_country');

В языковом файле добавляете соответствующую переменную catalog/language/ru*/product/category.php

$_['$text_country'] = 'Страна-производитель';

А затем в шаблоне страницы категории catalog/view/theme/<тема>/template/product/category.tpl

- выводите значение ранее объявленной переменной

Так?

 

Змінено користувачем PaulKravchenko
Надіслати
Поділитися на інших сайтах

36 минут назад, PaulKravchenko сказал:

Давайте сверимся.

В контроллере catalog/controller/product/category.php 

- в массив данных товара добавили переменную: 'country'      => $result['country']

- там же в основную функцию добавили языковую переменную: $data['text_country'] = $this->language->get('text_country');

В языковом файле добавляете соответствующую переменную catalog/language/ru*/product/category.php

$_['$text_country'] = 'Страна-производитель';

А затем в шаблоне страницы категории catalog/view/theme/<тема>/template/product/category.tpl

- выводите значение ранее объявленной переменной

Так?

 

Да,все верно!

Надіслати
Поділитися на інших сайтах


Если есть возможность, киньте в личку оригинальный мод (который в товар добавляет), хочется просто понять кое-что

Надіслати
Поділитися на інших сайтах

2 часа назад, PaulKravchenko сказал:

Если есть возможность, киньте в личку оригинальный мод (который в товар добавляет), хочется просто понять кое-что

Вы хе знаете что нельзя передавать модули!

Что Вам не понятно?

В качестве дополнения к основному описанию скажу.

Что модуль добавляет поле Страна на страницу производителя в админке.

Вот код добавления клиентской части:

Спойлер

    <file path="catalog/view/theme/*/template/product/product.tpl">
        <operation>
            <search><![CDATA[<li><?php echo $text_model; ?> <?php echo $model; ?></li>]]></search>
            <add position="before"><![CDATA[
        <?php if ($country) { ?>
            <li><?php echo $text_country; ?> <?php echo $country; ?></li>
        <?php } ?>]]></add>
        </operation>
    </file>
    <file path="catalog/model/catalog/product.php">
        <operation>
            <search><![CDATA['manufacturer'     => $query->row['manufacturer'],]]></search>
            <add position="after"><![CDATA[                'country'     => $query->row['country'],]]></add>
        </operation>
        <operation>
            <search><![CDATA[(SELECT md.name FROM " . DB_PREFIX . "manufacturer_description md WHERE md.manufacturer_id = p.manufacturer_id AND md.language_id = '" . (int)$this->config->get('config_language_id') . "') AS manufacturer,]]></search>
            <add position="replace"><![CDATA[(SELECT md.name FROM " . DB_PREFIX . "manufacturer_description md WHERE md.manufacturer_id = p.manufacturer_id AND md.language_id = '" . (int)$this->config->get('config_language_id') . "') AS manufacturer, (SELECT md.country FROM " . DB_PREFIX . "manufacturer_description md WHERE md.manufacturer_id = p.manufacturer_id AND md.language_id = '" . (int)$this->config->get('config_language_id') . "') AS country, ]]></add>
        </operation>
    </file>
    <file path="catalog/controller/product/product.php">
        <operation>
            <search><![CDATA[$data['manufacturer'] = $product_info['manufacturer'];]]></search>
            <add position="after"><![CDATA[            $data['country'] = $product_info['country'];]]></add>
        </operation>
        <operation>
            <search><![CDATA[$data['text_manufacturer'] = $this->language->get('text_manufacturer');]]></search>
            <add position="after"><![CDATA[$data['text_country'] = $this->language->get('text_country');]]></add>
        </operation>
    </file>
    <file path="catalog/language/*/product/product.php">
        <operation>
            <search><![CDATA[// Text]]></search>
            <add position="before"><![CDATA[$_['text_country'] = 'Страна:';]]></add>
        </operation>
    </file>

 

Screenshot_2019-05-21 Производители.png

Надіслати
Поділитися на інших сайтах


45 минут назад, helen2014 сказал:

Вы хе знаете что нельзя передавать модули!

но не знаю платный модуль вы используете или он в свободном доступе или его для вас делали

45 минут назад, helen2014 сказал:

Что Вам не понятно?

все понятно, извиняюсь за попытку помочь

 

В качестве дополнения скажу, что есть вероятность необходимости запрашивать модель модуля или производителя в контроллере категорий.

 

Удачи.

  • +1 1
Надіслати
Поділитися на інших сайтах

3 минуты назад, helen2014 сказал:

Страна производителя в карточке товара

где его можно купить?

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.