zyto Опубліковано: 21 грудня 2015 Share Опубліковано: 21 грудня 2015 У меня в шаблоне есть множество однотипных блоков, которые выводят блок (прямоугольник) товара. Например, блок товара должен одинаково выглядеть: в списке товаров категории, в списке товаров бренда, в рекомендуемых товарах, в новинках, и т.д. и т.п. И если вдруг надо внести правки во внешний вид этого блока - то нужно исправить кучу файликов, типа category.tpl featured.tpl latest.tpl и т.д. Можно во всех этих файлах шаблона сделать некую "ссылку" на подшаблон товара, что бы потом можно было поменять в одном месте, и во всех блоках отображение изменилось бы. Наверняка можно сделать что-то типа require или include... Но это немножко "топорно"... А есть ли у opencart'a возможность зарендерить часть шаблона из другого шаблона? Надіслати Поділитися на інших сайтах More sharing options...
zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 Версия Opencart 1.5.6.3 Надіслати Поділитися на інших сайтах More sharing options...
zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 Т.е. мне нужно что-то типа $this->render() но не из контроллера а из шаблона (tpl). Что-нибудь такое бывает? Надіслати Поділитися на інших сайтах More sharing options...
pantagruel964 Опубліковано: 21 грудня 2015 Share Опубліковано: 21 грудня 2015 "мойфайл.tpl" сделайте и подключайте куда хотите Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 Я и спрашиваю - как в opencart правильно подключить шаблон (tpl) из другого шаблона? можно кусочек кода? Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 *сейчас в контроллере сделал так: if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product_block.tpl')) { $this->data['product_template'] = DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product_block.tpl'; } и потом в шаблоне: <?php if(isset($this->data['product_template'])){ include $this->data['product_template']; } ?> Но мне кажется это не совсем правильно... Таким образом надо будет изменять каждый контроллер связанный с выводом блока товаров и т.д. Надіслати Поділитися на інших сайтах More sharing options... pantagruel964 Опубліковано: 21 грудня 2015 Share Опубліковано: 21 грудня 2015 Создаете шаблон, например "module/myfile.tpl" Создаете контроллер "module/myfile.php" В контроллере грузите необходимые модели, делаете че вам там надо делать и указываете шаблон $this->template = 'default/template/module/myfile.tpl'; Открываете контроллер шаблона, куда хотите пихать свой шаблон и подключаете его, обычно этот кусок выглядит так $this->children = array( 'common/column_left', 'common/column_right', 'common/content_top', 'common/content_bottom', 'common/footer', 'common/header' ); Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 Ну мне отдельный шаблон не нужен, я никаких вычислений не произвожу, мне нужно только кусок шаблона вынести в другой шаблон. Пример, файл module/featured.tpl выглядит так: <div class="box"> <div class="box-heading"><?php echo $heading_title; ?></div> <div class="box-content"> <div class="box-product"> <?php foreach ($products as $product) { ?> <div> <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div> <?php if ($product['price']) { ?> <div class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-old"><?php echo $product['price']; ?></span><br /><span class="price-new"><?php echo $product['special']; ?></span> <?php } ?> </div> <?php } ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <div class="cart"><input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /></div> </div> <?php } ?> </div> </div> </div> Я хочу вынести кусок, который отвечает за сам блок товара в отдельный файл, что бы featured.tpl остался таким: <div class="box"> <div class="box-heading"><?php echo $heading_title; ?></div> <div class="box-content"> <div class="box-product"> <?php foreach ($products as $product) { ?> !!!ТУТ НАДО ПОДКЛЮЧАТЬ ДОП.ШАБЛОН product_block.tpl!!! <?php } ?> </div> </div> </div> и появился бы некий product_block.tpl: <div> <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div> <?php if ($product['price']) { ?> <div class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-old"><?php echo $product['price']; ?></span><br /><span class="price-new"><?php echo $product['special']; ?></span> <?php } ?> </div> <?php } ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <div class="cart"><input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /></div> </div> никаких доп. вычислений делать не нужно, все данные для вывода у меня уже есть, мне просто в featured.tpl надо подключить product_block.tpl Можно это сделать без создания доп. контроллера? Надіслати Поділитися на інших сайтах More sharing options... pantagruel964 Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 А чем не устраивает такой вывод своего блока <?php echo $my_block; ?> Ну, делайте через ж... по своему. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 Простите, не совсем понял, где должен заполняться $my_block, при том что данные все уже есть во вьюхе, и новые запросы к БД не хотелось бы делать. Надіслати Поділитися на інших сайтах More sharing options... pantagruel964 Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 Я вам выше описал. Возьмите какой-нибудь модуль и разберите его - поймете что и как работает. Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 requrie_once в шаблонах / создание какой-нибудь библиотеки (или хэлпера) с методом, который будет принимать массив товаров, а отдавать сформированный html (в шаблоне вызываться будет как-то так - "echo $this->megoproducthtmllibrary->buildproductblock($products_array);"). но это привнесет запутанности в движок. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А где хелпер должен лежать, и что в нём должно быть?Где-нибудь можно почитать именно про создание хелперов? Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А... Вы наверно имели ввиду библиотеку: https://opencartforum.com/topic/29217-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%B2%D0%BE%D0%B5%D0%B9-%D0%B1%D0%B8/ А для библиотеки можно шаблон (вид) создать, или предполагается что HTML целиком будет формироваться в этой библиотеке? Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 предполагается что HTML целиком будет формироваться в этой библиотеке Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Шаблони, дизайн та оформлення магазину Как сделать что бы шаблон блока товара описывался в одном месте? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 Я и спрашиваю - как в opencart правильно подключить шаблон (tpl) из другого шаблона? можно кусочек кода? Надіслати Поділитися на інших сайтах More sharing options...
zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 *сейчас в контроллере сделал так: if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product_block.tpl')) { $this->data['product_template'] = DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product_block.tpl'; } и потом в шаблоне: <?php if(isset($this->data['product_template'])){ include $this->data['product_template']; } ?> Но мне кажется это не совсем правильно... Таким образом надо будет изменять каждый контроллер связанный с выводом блока товаров и т.д. Надіслати Поділитися на інших сайтах More sharing options...
pantagruel964 Опубліковано: 21 грудня 2015 Share Опубліковано: 21 грудня 2015 Создаете шаблон, например "module/myfile.tpl" Создаете контроллер "module/myfile.php" В контроллере грузите необходимые модели, делаете че вам там надо делать и указываете шаблон $this->template = 'default/template/module/myfile.tpl'; Открываете контроллер шаблона, куда хотите пихать свой шаблон и подключаете его, обычно этот кусок выглядит так $this->children = array( 'common/column_left', 'common/column_right', 'common/content_top', 'common/content_bottom', 'common/footer', 'common/header' ); Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 Ну мне отдельный шаблон не нужен, я никаких вычислений не произвожу, мне нужно только кусок шаблона вынести в другой шаблон. Пример, файл module/featured.tpl выглядит так: <div class="box"> <div class="box-heading"><?php echo $heading_title; ?></div> <div class="box-content"> <div class="box-product"> <?php foreach ($products as $product) { ?> <div> <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div> <?php if ($product['price']) { ?> <div class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-old"><?php echo $product['price']; ?></span><br /><span class="price-new"><?php echo $product['special']; ?></span> <?php } ?> </div> <?php } ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <div class="cart"><input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /></div> </div> <?php } ?> </div> </div> </div> Я хочу вынести кусок, который отвечает за сам блок товара в отдельный файл, что бы featured.tpl остался таким: <div class="box"> <div class="box-heading"><?php echo $heading_title; ?></div> <div class="box-content"> <div class="box-product"> <?php foreach ($products as $product) { ?> !!!ТУТ НАДО ПОДКЛЮЧАТЬ ДОП.ШАБЛОН product_block.tpl!!! <?php } ?> </div> </div> </div> и появился бы некий product_block.tpl: <div> <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div> <?php if ($product['price']) { ?> <div class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-old"><?php echo $product['price']; ?></span><br /><span class="price-new"><?php echo $product['special']; ?></span> <?php } ?> </div> <?php } ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <div class="cart"><input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /></div> </div> никаких доп. вычислений делать не нужно, все данные для вывода у меня уже есть, мне просто в featured.tpl надо подключить product_block.tpl Можно это сделать без создания доп. контроллера? Надіслати Поділитися на інших сайтах More sharing options... pantagruel964 Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 А чем не устраивает такой вывод своего блока <?php echo $my_block; ?> Ну, делайте через ж... по своему. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 Простите, не совсем понял, где должен заполняться $my_block, при том что данные все уже есть во вьюхе, и новые запросы к БД не хотелось бы делать. Надіслати Поділитися на інших сайтах More sharing options... pantagruel964 Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 Я вам выше описал. Возьмите какой-нибудь модуль и разберите его - поймете что и как работает. Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 requrie_once в шаблонах / создание какой-нибудь библиотеки (или хэлпера) с методом, который будет принимать массив товаров, а отдавать сформированный html (в шаблоне вызываться будет как-то так - "echo $this->megoproducthtmllibrary->buildproductblock($products_array);"). но это привнесет запутанности в движок. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А где хелпер должен лежать, и что в нём должно быть?Где-нибудь можно почитать именно про создание хелперов? Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А... Вы наверно имели ввиду библиотеку: https://opencartforum.com/topic/29217-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%B2%D0%BE%D0%B5%D0%B9-%D0%B1%D0%B8/ А для библиотеки можно шаблон (вид) создать, или предполагается что HTML целиком будет формироваться в этой библиотеке? Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 предполагается что HTML целиком будет формироваться в этой библиотеке Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Шаблони, дизайн та оформлення магазину Как сделать что бы шаблон блока товара описывался в одном месте? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
zyto Опубліковано: 21 грудня 2015 Автор Share Опубліковано: 21 грудня 2015 Ну мне отдельный шаблон не нужен, я никаких вычислений не произвожу, мне нужно только кусок шаблона вынести в другой шаблон. Пример, файл module/featured.tpl выглядит так: <div class="box"> <div class="box-heading"><?php echo $heading_title; ?></div> <div class="box-content"> <div class="box-product"> <?php foreach ($products as $product) { ?> <div> <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div> <?php if ($product['price']) { ?> <div class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-old"><?php echo $product['price']; ?></span><br /><span class="price-new"><?php echo $product['special']; ?></span> <?php } ?> </div> <?php } ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <div class="cart"><input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /></div> </div> <?php } ?> </div> </div> </div> Я хочу вынести кусок, который отвечает за сам блок товара в отдельный файл, что бы featured.tpl остался таким: <div class="box"> <div class="box-heading"><?php echo $heading_title; ?></div> <div class="box-content"> <div class="box-product"> <?php foreach ($products as $product) { ?> !!!ТУТ НАДО ПОДКЛЮЧАТЬ ДОП.ШАБЛОН product_block.tpl!!! <?php } ?> </div> </div> </div> и появился бы некий product_block.tpl: <div> <?php if ($product['thumb']) { ?> <div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" /></a></div> <?php } ?> <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div> <?php if ($product['price']) { ?> <div class="price"> <?php if (!$product['special']) { ?> <?php echo $product['price']; ?> <?php } else { ?> <span class="price-old"><?php echo $product['price']; ?></span><br /><span class="price-new"><?php echo $product['special']; ?></span> <?php } ?> </div> <?php } ?> <div class="rating"> <?php for ($i = 1; $i <= 5; $i++) { ?> <?php if ($product['rating'] < $i) { ?> <span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } else { ?> <span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span> <?php } ?> <?php } ?> </div> <div class="cart"><input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" /></div> </div> никаких доп. вычислений делать не нужно, все данные для вывода у меня уже есть, мне просто в featured.tpl надо подключить product_block.tpl Можно это сделать без создания доп. контроллера? Надіслати Поділитися на інших сайтах More sharing options...
pantagruel964 Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 А чем не устраивает такой вывод своего блока <?php echo $my_block; ?> Ну, делайте через ж... по своему. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 Простите, не совсем понял, где должен заполняться $my_block, при том что данные все уже есть во вьюхе, и новые запросы к БД не хотелось бы делать. Надіслати Поділитися на інших сайтах More sharing options... pantagruel964 Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 Я вам выше описал. Возьмите какой-нибудь модуль и разберите его - поймете что и как работает. Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 requrie_once в шаблонах / создание какой-нибудь библиотеки (или хэлпера) с методом, который будет принимать массив товаров, а отдавать сформированный html (в шаблоне вызываться будет как-то так - "echo $this->megoproducthtmllibrary->buildproductblock($products_array);"). но это привнесет запутанности в движок. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А где хелпер должен лежать, и что в нём должно быть?Где-нибудь можно почитать именно про создание хелперов? Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А... Вы наверно имели ввиду библиотеку: https://opencartforum.com/topic/29217-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%B2%D0%BE%D0%B5%D0%B9-%D0%B1%D0%B8/ А для библиотеки можно шаблон (вид) создать, или предполагается что HTML целиком будет формироваться в этой библиотеке? Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 предполагается что HTML целиком будет формироваться в этой библиотеке Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Шаблони, дизайн та оформлення магазину Как сделать что бы шаблон блока товара описывался в одном месте? Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення Повний пакет SEO Автор: GeekoDev SameSite Session Fix Opencart 3 Автор: web_bond SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich
zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 Простите, не совсем понял, где должен заполняться $my_block, при том что данные все уже есть во вьюхе, и новые запросы к БД не хотелось бы делать. Надіслати Поділитися на інших сайтах More sharing options...
pantagruel964 Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 Я вам выше описал. Возьмите какой-нибудь модуль и разберите его - поймете что и как работает. Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 requrie_once в шаблонах / создание какой-нибудь библиотеки (или хэлпера) с методом, который будет принимать массив товаров, а отдавать сформированный html (в шаблоне вызываться будет как-то так - "echo $this->megoproducthtmllibrary->buildproductblock($products_array);"). но это привнесет запутанности в движок. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А где хелпер должен лежать, и что в нём должно быть?Где-нибудь можно почитать именно про создание хелперов? Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А... Вы наверно имели ввиду библиотеку: https://opencartforum.com/topic/29217-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%B2%D0%BE%D0%B5%D0%B9-%D0%B1%D0%B8/ А для библиотеки можно шаблон (вид) создать, или предполагается что HTML целиком будет формироваться в этой библиотеке? Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 предполагается что HTML целиком будет формироваться в этой библиотеке Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Підтримка та відповіді на запитання. Шаблони, дизайн та оформлення магазину Как сделать что бы шаблон блока товара описывался в одном месте?
afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 requrie_once в шаблонах / создание какой-нибудь библиотеки (или хэлпера) с методом, который будет принимать массив товаров, а отдавать сформированный html (в шаблоне вызываться будет как-то так - "echo $this->megoproducthtmllibrary->buildproductblock($products_array);"). но это привнесет запутанности в движок. Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А где хелпер должен лежать, и что в нём должно быть?Где-нибудь можно почитать именно про создание хелперов? Надіслати Поділитися на інших сайтах More sharing options... zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А... Вы наверно имели ввиду библиотеку: https://opencartforum.com/topic/29217-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%B2%D0%BE%D0%B5%D0%B9-%D0%B1%D0%B8/ А для библиотеки можно шаблон (вид) создать, или предполагается что HTML целиком будет формироваться в этой библиотеке? Надіслати Поділитися на інших сайтах More sharing options... afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 предполагается что HTML целиком будет формироваться в этой библиотеке Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А где хелпер должен лежать, и что в нём должно быть?Где-нибудь можно почитать именно про создание хелперов? Надіслати Поділитися на інших сайтах More sharing options...
zyto Опубліковано: 22 грудня 2015 Автор Share Опубліковано: 22 грудня 2015 А... Вы наверно имели ввиду библиотеку: https://opencartforum.com/topic/29217-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B8-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81%D0%B2%D0%BE%D0%B5%D0%B9-%D0%B1%D0%B8/ А для библиотеки можно шаблон (вид) создать, или предполагается что HTML целиком будет формироваться в этой библиотеке? Надіслати Поділитися на інших сайтах More sharing options...
afwollis Опубліковано: 22 грудня 2015 Share Опубліковано: 22 грудня 2015 предполагается что HTML целиком будет формироваться в этой библиотеке Надіслати Поділитися на інших сайтах More sharing options... Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
Recommended Posts