vlad4298

Вывод php запроса в YML файл

Рекомендуемые сообщения

vlad4298    0

Добрый день, уважаемые форумчане!

Сейчас работаю с модулем "Y.CMS от Яндекс.Кассы".

Есть вопрос по выводу значения указанного в бд с помощью PHP запроса.

 

Заметил, что неплохо бы добавить в модуль атрибут typePrefix, а то ругается поддержка Яндекса без него. Было принято решение это исправить. Так вот, добавил в базу данных новый столбец, добавил поле для категорий, в общем, теперь можно записать своё значение typePrefix в базу через менюшку категорий админки. С этим ок всё. 

Однако, нужно же и вывести это значение в YML список. 

В начале добавил typePrefix в разрешённые поля(изменял файл catalog/controller/feed/yamarket.php):

$allowed = array('url', 'price', 'currencyId', 'categoryId', 'picture', 'store', 'pickup', 'delivery', 'name', 'typePrefix', 'vendor', 'vendorCode', ‘model’...

Окей, работает. И теперь - момент истины: нужно вывести информацию, которая хранится в базе по адресу oc_category_description>type_prefix вот сюда:

$data['currencyId'] = $currency_default['code'];
      $data['categoryId'] = $product['category_id'];

      $data['typePrefix'] = $oc_category_description['type_prefix’]; //Здесь пытался вывести значение.

      $data['vendor'] = $product['manufacturer'];
      $data['vendorCode'] = $product['model']; 

Не работает. Какие бы изменения не делал.

Также пытался делать изменения в /catalog/model/yamodel.php, где идёт подключение к бд(насколько я понимаю). Тогда вообще часть с offer в выводе вообще пропадала. 

Оба файла:

1

2

 

Буду благодарен за вашу помощь!

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
shalan    40

$oc_category_description у вас не задается

должно быть примерно так

$category_description = $this->model_cataloc_category->getCategoryDescriptions($product['category_id']);//getCategoryDescriptions должна возвращать поле type_prefix
$data['type_prefix'] = $category_description['type_prefix']; 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
vlad4298    0

 

$oc_category_description у вас не задается

должно быть примерно так

$category_description = $this->model_cataloc_category->getCategoryDescriptions($product['category_id']);//getCategoryDescriptions должна возвращать поле type_prefix
$data['type_prefix'] = $category_description['type_prefix']; 

Добрый день, спасибо за помощь. Но не работает. Начинает передавать белый экран.

В PHP логах выдает следующую ошибку:

[11-Jul-2016 08:15:49 Europe/Berlin] PHP Fatal error:  Call to a member function getCategoryDescriptions() on null in /Applications/MAMP/htdocs/catalog/controller/feed/yamarket.php on line 25

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
shalan    40

Чтобы заработало, нужно подключить модель категорий.

$this->load->model('catalog/category'); 

И в этой модели, возможно, дописать получение type_prefix

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
nikifalex    375

model_cataloc_category

model_catalog_category

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
vlad4298    0

Чтобы заработало, нужно подключить модель категорий.

$this->load->model('catalog/category'); 

И в этой модели, возможно, дописать получение type_prefix

 

model_cataloc_category

model_catalog_category

 

Да, это всё сразу сделал, спасибо. Итого у меня получается такой код:

class ControllerFeedYamarket extends Controller {

	public function index()
	{

	$this->load->model('catalog/category');

	$category_description = $this->model_catalog_category->getCategoryDescriptions($product['category_id']);

foreach ($products as $product)
		{
	$data['typePrefix'] =  $category_description['type_prefix'];  
....

Ошибка:

[11-Jul-2016 13:48:08 Europe/Berlin] PHP Fatal error:  Call to undefined method ModelCatalogCategory::getCategoryDescriptions() in /Applications/MAMP/htdocs/catalog/controller/feed/yamarket.php on line 26

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
shalan    40

Попробуйте getCategory вместо getCategoryDescriptions

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
vlad4298    0

Попробуйте getCategory вместо getCategoryDescriptions

Пробую. Появился YML лист, но без typePrefix.
Вдело такие ошибки:
2016-07-11 19:08:03 - PHP Notice:  Undefined variable: product in /Applications/MAMP/htdocs/catalog/controller/feed/yamarket.php on line 26
2016-07-11 19:08:03 - PHP Notice:  Undefined index: type_prefix in /Applications/MAMP/htdocs/catalog/controller/feed/yamarket.php on line 87
Код в этих местах:
$category_description = $this->model_catalog_category->getCategory($product['category_id']);
$data['typePrefix'] =  $category_description['type_prefix'];  
 
 
Может быть не так указали адрес? Вот бд
Изменено пользователем vlad4298

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
shalan    40

у вас не определена переменная $product

вторая ошибка - следствие первой

Изменено пользователем shalan

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Похожий контент

    • От androidpos

      3 300.00 руб
      Скачать/Купить дополнение


      54ФЗ Касса интернет-магазина (фискальный регистратор)
      Регистрация электронных платежей в соответствии с 54ФЗ. Данные с Вашего сайта поступают прямо на Ваш ПК и ФР. Никаких ежемесячных платежей и посредников по передаче данных. Любая модель регистраторов Штрих и Атол. Отправка данных ОФД, электронные чеки. Может работать с несколькими магазинами одновременно. OpenCart 1.5-2.0 - 2.3
       
      "Касса интернет-магазина" представляет собой комплекс из двух модулей - один устанавливается на сайте интернет-магазина, другой на ПК под управлением ОС Windows. К этому же ПК подключается фискальный регистратор (далее ФР).
      После оплаты покупателем товара и перехода статуса заказа в заранее выбранный при настройке, модуль сайта производит отправку информации об оплаченном заказе на ПК .Обработанные данные заносятся в базу и передаются на ФР. После регистрации происходит автоматическая передача данных ОФД (оператору фискальных данных), который в свою очередь фиксирует продажу и отправляет электронный чек покупателю на адрес, указанный при заказе. На всё уходит 1-2 сек.
      С текущей версии включена поддержка работы с курьерами.
      Требования к хостингу:
      - PHP от 5.4
      - ionCube Loader от 5.0 (два зашифрованных файла)
      - разрешённые исходящие соединения (на любом порту)
      Требования к ПК:
      - ОС Windows 7
      - .NET Framework 4.0
      - установленные драйвера ФР - в зависимости от выбранной модели
      - выделенный IP (локальной сети или ПК)
      Фискальный регистратор (ФР) - любая модель Штрих или Атол, поддерживающая 54ФЗ.
      Возможности модуля на хостинге:
      - ввод IP для связи
      - данные логина и пароля для связи
      - выбор отслеживаемого статуса заказа
      - создание и сохранение списка видов платежей, которые следует считать электронными и фиксировать по 54ФЗ.
      - отправка и учет всех видов бонусов и скидок в заказе
      - сохранение (для последующей передачи) неотправленных по какой-либо причине оплаченных заказов
      - приём и передача информации на ФР от модуля "Смартфон курьера для OpenCart +54ФЗ"
      Возможности модуля на ПК:
      - автоматическая авторизация подключения
      - работа по HTTP и HTTPS
      - фильтрация по IP
      - запись данных в базу, вывод журнала, просмотр отдельных заказов (чеков)
      - при отсутствии связи с ФР накопление незарегистрированных чеков
      - все функции управления ФР, возвраты
      - возможность отключения печати чеков на ленте, с записью только в ФН (что предусмотрено 54ФЗ для удалённых электронных платежей)
      - пробитие как он-лайн чеков (оплата на сайте\платёжной системе), так за наличный расчет
      - тест канала связи
      - тест модуля на сайте
      Кроме этого, система имеет закодированную передачу данных и стойкое шифрование (256 бит) авторизации.
      В архиве три установки на OC (1.5, 2.0-2.2, 2.3), установщик Windows.
      Лицензия (ключ) по запросу после приобретения.
      Драйвера для регистраторов, бесплатные демо-версии (v1.0.1), ссылки на демо доступы здесь.
      Сайт поддержки - help.android-pos.ru
       
      Быстро и бесплатно спрашиваем здесь:  WhatsApp
       
      Новая услуга - удалённое подключение под ключ (при выполнении требований к оборудованию и ПО). Подробнее - support@android-pos.ru или ЛС.
       
      Добавил androidpos Добавлено 01.07.2017 Категория Платежные системы Системные требования Сайт разработчика http://cash.android-pos.ru Старая цена Метод активации По запросу в ЛС Ioncube Loader Требуется OpenCart 2.3
      2.2
      2.1
      2.0
      1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 2.3
      2.2
      2.1
      1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х  
    • От Midnightla
      Добрый день, уважаемые форумчане!
      Ищу исполнителя для работы по подключению 1с Торговля и склад 7.7 к Opencart 1.55 
      Нужно, чтобы позиции и ценники из 1с автоматически грузились в опенкарт. 
    • От NetGonTech
      [14.02.18] Ищем 3 человек, у которых был бы интерес войти в нашу стоковую команду с целью создания шаблонов для themeforest и templatemonster под OpenCart 3.x. Это мы https://themeforest.net/user/netgon. Сотрудничество на процентной основе. 25% с потенциальной прибыли с копии каждого созданного шаблона. Готовая вёрстка предоставляется.

      Если предложение интересно, то пишите в skype - doomer_gg

      * Предложение также актуально для WordPress и Shopify.
    • От sunnyplum
      При установке темы в opencart "У Вас нет прав для изменения настроек", как исправить?
      В пользователи-группа пользователей установила все галочки. 
      Может быть важно то, что временами возникает ошибка "Неправильная токен-сессия. Авторизуйтесь снова." Тоже не понимаю, из за чего. Помогите, пожалуйста
    • От wikiprices
      Приветствую. Надо сделать ИМ на opencart, дизайн предоставляю в виде psd файлов, нужна верстка, подключение шаблона и настройка движка. Будет использована версия 2.3.0.2. Функционал магазина будет стандартный, пару ньюансов небольших, без подключения к 1C, без оплаты на сайте, т.е. сайт будет больше похож на витрину с стандартным оформлением заказа в корзину и отсылки заказа по почте менеджеру и заказчику. Всего будет примерно 6 оригинальных страниц. Пришлите примеры ваших работ и скайп для связи.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу