Чтобы посмотреть что у Вас выводится, нужно сохранить заказ. Вы можете сделать это в админ панели в разделе заказа какого-либо. Когда нажмёте сохранить, пойдёт запрос на сохранение. И Вы можете в ответе сервера посмотреть, что он вернёт. А вернуть он должен то, что у Вас в var_dump
1,726 01.07.2016 12:28:19
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
1,727 01.07.2016 12:03:33
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Ну а Вы предварительно не смотрите, что в переменной?
<pre>
var_dump($coupons);
</pre>
exit();
1,728 01.07.2016 11:30:56
Re: Описание категорий, подкатегорий и изображения к категориям. (6 ответов, оставленных в Вопросы по созданию тем оформления)
В моей теме нет папки catalog /templates/ВАША ТЕМА/moduleview/catalog/
мне нужно ее создать?
Да.
Где лежит category.tpl?
/modules/catalog/view/blocks/category/
Скопировать нужно аналогично предыдущему примеру.
Вообще, чтобы понимать где шаблон и как его копировать на изменение. Нужно почитать прикреплённый Выше мной материал.
P.S. Ещё один момент. Для правки тем оформления, нужно отклонировать Вашу тему оформления в Управление -> Шаблоны->Справа вверху клонировать тему. И поставьте галочку переключиться на новую тему. После чего можете спокойно с ней работать. Иначе после обновления Ваши изменения затрутся, т.к. темы обновляются тоже.
1,729 01.07.2016 11:29:22
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Ну, а для чего я Вам написал выше:
Получить купоны можно так:
$coupons=$order->getCart()->getCouponItems()
1,730 30.06.2016 18:56:28
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Правильно и купон. Возьмите его из объекта заказа как и order_num.
<pre>
var_dump($order);
</pre>
exit();
1,731 30.06.2016 18:09:05
Re: Добавить свой класс каждому пункту меню категорий (14 ответов, оставленных в Вопросы по работе с системой)
Добавил поле CSS для категорий:
https://yadi.sk/d/iPyJJl4fsuYeU
Обратите внимание, название модуля поменял с evaddons на evcss, так как ранее название пересекалось с другим моим модулем. Поэтому старый модуль надо удалить.
Файл uninstall в конфиге Вам не нужен. Если класс пустой, его можно не использовать. Выкладывайте в Маркет
1,732 30.06.2016 18:04:15
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Кстати, Вы используте в работе какую-либо IDE?
1,733 30.06.2016 17:42:35
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Итак поясняю:
public static function OrmAfterwriteShopOrder($data)
{
//Получаем объект заказа из массива данных
$order = $data['orm']; //ЗДЕСЬ ОБЪЕКТ ЗАКАЗА \Shop\Model\Orm\Order
//Здесь я зачем-то переназначаю переменную $order в, которой находится объект заказа уже.
$order = new \Newpage\Model\Orm\Mydiscount(); //ЗДЕСЬ объект промежуточной Вашей таблицы
//Записываю значение в поле order_id для таблицы
$order['order_id'] = "1";
//Запись значения в БД.
$res = $order->insert();
}
order_num можно взять из объекта заказа. Переменную для записи в БД нужно иметь свою отдельную.
Получить корзину заказа, можно через
$order->getCart()
Получить купоны можно так:
$order->getCart()->getCouponItems()
Чтобы посмотреть какого типа переменная и что в ней содержится в любом php файле можно так:
<pre>
var_dump(Имя переменной);
</pre>
exit(); //Останавливает всё
P.S.
Так, как у Вас явные пробелы в ООП, я специально не даю прямых ответов на вопросы связанные с объектно-ориентированным программированием. Я даю наводящие вопросы, чтобы Вы самостоятельно немножко разобрались. Поэтому Вы не обижайтесь, а пробуйте, я постараюсь дать максимальную возможною справочную информацию.
1,734 30.06.2016 17:08:22
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Напишите код для afterwrite заказа, я Вам подскажу где.
1,735 30.06.2016 16:31:11
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Да. Правильно.
Я Вам дал ссылку с хуками http://readyscript.ru/dev-manual/dev_hooks.html
1,736 30.06.2016 16:07:52
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
У вас записывается заказ. Так подвестесь на хук записи заказа и там заносите в БД Ваш ORM объект. Там же и будет доступен сам объект заказа.
Ато получается Вы кодом сказали, что записывать надо самого себя. BeforeWrite в ORM объекте срабатывает перед записью самого себя. А чтобы сделать действия с другим объектом перед или после записи, то нужно использовать хук. В Вашем случае надо записывать Ваш ORM после записи заказа.
Смотрите хук afterwrite http://readyscript.ru/dev-manual/dev_hooks.html
Что касается переменных, то они не берутся из неоткуда. Их надо как-то присваивать. Глобальных переменных в RS практически нет. Это я к тому, что $order_num нужно сначала объявить чему-то равной, чтобы потом с ней оперировать.
1,737 30.06.2016 14:31:28
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Что означает у Вас данный код:
function beforeWrite($flag)
{
$order = new \Newpage\Model\Orm\Mydiscount();
$order['order_id'] = $order_num;
$res = $order->insert();
}
И почему вы вешаетесь на запись именно Вашего ORM MyDiscount? Вы ведь должны вешаться на запись самого заказа. Разве не так? И ещё вопрос, откуда вы предполагаете брать $order_num?
1,738 30.06.2016 13:36:14
Re: Описание категорий, подкатегорий и изображения к категориям. (6 ответов, оставленных в Вопросы по созданию тем оформления)
Ну тогда копируете из
/modules/catalog/view/list_products.tpl шаблон в
/templates/ВАША ТЕМА/moduleview/catalog/list_products.tpl и потом меняете его содержимое перенося, то что Вам нужно в нужное место.
Описание категории выводится в {$category.description}
1,739 30.06.2016 13:26:21
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Ну в данном случае можно обойтись без файла API. Он Вам незачем. Вы ведь просто ORM объект будете сохранять А так всё правильно.
1,740 30.06.2016 12:51:35
Re: Перестала работать карусель в карточке товаров. (3 ответов, оставленных в Вопросы по работе с системой)
Вам ответят в поддержке. Проблема не стандартная. Просто ожидайте.
1,741 30.06.2016 12:49:12
Re: превью статей (15 ответов, оставленных в Вопросы по работе с системой)
{$preview=strip_tags($item->getPreview())}
{$preview|truncate:"50"}
1,742 30.06.2016 12:46:25
Re: Описание категорий, подкатегорий и изображения к категориям. (6 ответов, оставленных в Вопросы по созданию тем оформления)
Как добавить изображения для подкатегорий?
Всё есть здесь http://forum.readyscript.ru/topic/177/
как описание категорий убрать в нижний уровень перед подвалом?
Какая у Вас тема оформления?
P.S. Руководство по темам оформления:
http://readyscript.ru/text-blog/Kak-soz … adyScript/
1,743 30.06.2016 12:40:11
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Можно же использовать функцию function beforeWrite($flag)
и подставить туда запрос на запись в новую бд?
И нужно создать еще один api?Тогда получается нужно создать еще папку orm и туда файл mydiscount.inc.php?Или можно поступить таким образом?но опять таки нужно папку orm и туда файл mydiscount.inc.php
И в переменных я наверное ошибся?$order = new \Newpage\Model\Orm\Mydiscount(); $order['order_id'] = $order_num; $res = $order->insert();
Вы молодец! Идёте в правильном направлении. Я просто говорил про то, что индекс Вам там такой не нужен. Т.к. можно просто использовать параметр у самого поля order_id при объявлении полей ORM объекта
'index' => true,
1,744 29.06.2016 17:46:53
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Все создал, а теперь мне нужно вот это?
$this->addIndex(array('site_id', 'order_num'),self::INDEX_UNIQUE);
И что это? Куда вы индекс добавляете?
1,745 29.06.2016 17:12:44
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Купон грузится из корзины заказа где есть все orderitems. Т.е. сразу доступны все элементы. В Вашем случае, нужно получить формулу несколько по другому. У вас ведь не просмотр одного заказа.
1,746 29.06.2016 16:55:16
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
Всё очень просто. Вы фильтруете по типу товар, а не по типу купон. У Вас идентификаторы купона и товара разные. Так и должно быть. JOIN по этому и не сходится.
Вам наверное надо создать ещё одну промежуточную таблицу с полями order_id и discount_id. И при сохранении заказа писать в неё связь для всего заказа. Тогда можно через 2 JOIN объеденить то что Вам нужно.
1,747 29.06.2016 16:28:00
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
В order_items у Вас есть entity_id, а в discount поле id.
1,748 29.06.2016 12:16:00
Re: Создать отдельную страницу (59 ответов, оставленных в Вопросы по разработке модулей и API системы)
У вас таблица order_discount кикие имеет общие поля? Какие вообще поля Вас есть в обоих таблицах?
1,749 29.06.2016 12:05:34
Re: Блок контроллер - список фотографий (2 ответов, оставленных в Вопросы по созданию тем оформления)
Всё дело в оштбки блока. Она будет исправлена в ближайшем обновлении. Если не хотите ждать, то откройте файл /modules/photo/controller/block/photolist.inc.php и строку:
$link_id = isset($route->$param) ? $route->$param : 0;
Меняете на:
$link_id = isset($route->$param) ? $route->$param : $param;
1,750 29.06.2016 12:01:35
Re: превью статей (15 ответов, оставленных в Вопросы по работе с системой)
Спасибо. Разберёмся.