meluin
-
Публікації
15 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем meluin
-
-
ребята, сорри что вклиниваюсь, но подскажите, как в контроллере header.php запихнуть $category_id?
мысль в том, что хочу в хедере отслеживать, в какой категории (ее айди) находится покупатель в данный момент
Сделай переменную $category. Для этого перед генерацией хедера поставь такой код:
$category = empty($this->request->get['path']) ? 0 : (int) array_pop(explode('_', $this->request->get['path']));
- 1
-
Я вставляю переменную по аналогии с custom page title. То есть сперва в catalog/model/catalog/product.php:
'myvar' => $query->row['myvar'],
Далее планировалось в catalog/controller/product/information.php:
if (!empty($information_info['myvar'])){$this->document->setMYVAR($information_info['myvar']);} else { $this->document->setMYVAR($information_info['title']);} .... $this->data['heading_myvar'] = $information_info['myvar'];
Ну и потом вывод в темплейт.
Для большей точности сейчас говорю именно о инфостраницах. Тут мне подсказывали, что тогда надо модель другую редактировать, но я пока не осилил это - сильно ещё не вникал, времени не было. Но тему добить стоило бы, я думаю такой вопрос в ФАКе очень бы пригодился многим. Я уверен в этом.
-
Не могу осилить: в моделях категории и информации нет упоминания о тайтлах и метах, но тем не менее они как-то туда попадают. В модели продукта вижу что-то похожее. Поеитесь примером каким на эту тему?
-
Извините, не подумал. До этого cptitle руками вставлял, там только одну модель надо было редактировать.
-
Так добавил в модель (catalog/model/catalog/product.php):
'myvar' => $query->row['myvar'],
Теперь контроллер (catalog/controller/product/information.php):
if (!empty($information_info['myvar'])){$this->document->setMYVAR($information_info['myvar']);} else { $this->document->setMYVAR($information_info['title']);}....$this->data['heading_myvar'] = $information_info['myvar'];
Вот что-то неправильно я в контроллере делаю, потому что вызвать heading_myvar из шаблона не получается.
-
Спасибо вам ребята, вы пробудили во мне внимательность. Причина поломки магазина была в том, что в одной из таблиц я опетался в названии поля. Естесственно, это скрипту не понравилось - двигаюсь дальше.
-
То есть в модели (в данном случае catalog/model/catalog/information.php) должно быть "query бла-бла-бла", потом передача в контроллер, где я смогу задать имя переменной. Попробую получить с работы доступ к кода магаза, тогда смогу более точный ответ сформировать.
-
Давайте, чтобы не путаться, обсуждать инфо-страницы. Делаю в базе:
CREATE TABLE IF NOT EXISTS `oc_information_description` ( `information_id` int(11) NOT NULL, `language_id` int(11) NOT NULL, `title` varchar(64) NOT NULL, `description` text NOT NULL, `cptitle` varchar(255) NOT NULL, `myvar` varchar(1024) NOT NULL, `meta_description` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, `meta_keyword` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, PRIMARY KEY (`information_id`,`language_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Создалось поле myvar. Про админку писать не буду, тк в ней всё получилось относительно просто, и она умеет писать в базу в это поле Теперь содержимое myvar хочется выгружать на инфостраницу. Я так понимаю для этого необходимо в файле catalog/model/catalog/information.php определить переменную, которую потом вставить в файл темплейта. Ход мыслей правильный?
-
Ой, а вы знаете, я так и делал, только это вызывало поломку магазина, потому что переменная не определена. То есть где-то ранее я её не упомянул или упомянул, но не правильно.
Ошибка получалась такая: Notice: "Undefined index: var1 in" и дальше куча мусора. Для вывода в информационных страницах и категориях, надо править состветвующие файлы? Например, catalog/model/catalog/information.php.
То есть уточню. В базе в таблицах категорий, продуктов и информации добавил поле varchar, которое содержит что-то. Теперь нужно вывести значение этого поля в темплейтах информации, категории и продукта. Если нужна какая-то ещё информация - я дам все что нужно.
-
Да, я на все страницы хотел добавить значение. То есть я добавил новое поле varchar в таблицы category_description, product_desription и information_description. В админе поменял код и она научилась писать в базу в соответвующие поля. А вот вывести никак не получается содержимое этих полей на страницы. То есть где в шаблоне менять - я понимаю,а вот как сделать переменную - не очень понимаю.
вроде надо менять вот в этих файлах:
catalog\model\catalog\product.php
catalog\controller\product\prduct.php (information.php, catagery.php)
Но пока безуспешно.
-
Ребят, сделал в админке значение. С админки оно сохраняется в базе. Но никак не получается вывести значение этого поля в каждой странице (
Хожу около и рядом и никак. Мне каким-то образом нужно в тело всех страниц в определеное место выводить значение дополнительного поля для каждой позиции, информации и виртуальной страницы.
То есть понятно, что для каждой категории, инфостраницы, продукта создано дополнительное поле. С админки данные удается передать в это поле, но не получается его значение передать в страницу с темплейтом. ((
Помогите, пожалуйста, с решением. Или пните в нужном направлении, измучался уже.
Спасибо.
вывести из базы
в Загальні питання
Опубліковано:
Вау! Как просто ларчик открывался! Спасибо вам. Все сразу получилось.
Файлов нет, возможно потому, что я использую нативный опенкарт и мне приходится все СЕО штучки добавлять самостоятельно. Это крайне мучительно, но я хотя бы начинаю по немногу понимать, что происходит там внутри. Вам ещё раз спасибо. Теперь попробую все это проделать с другими страницами магазки.
И надо if навернуть, чтобы если не заполнено, то какое-нить другое значение ставилось ))