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

Кнопка-ссылка из админки в карточку товара


Recommended Posts

Всем привет! В админке Ocstore реализована удобная функция - на странице редактирования товара наверху в правом углу имеется кнопка перехода в карточку этого товара. В Русской сборке Опенкарт 3.0.3.7 данного удобства нет. Поиск в интернете нужной информации не дал, поэтому решил править  файл /admin/view/template/catalog/product_form.twig методом проб и ошибок. Скопировал из Ocstore отвечающий за эту функцию участок кода:

 

 <?php if (isset($product_page)) { ?><a class="btn btn-info" href="<?php echo $product_page; ?>" target="_blank" data-toggle="tooltip" title="<?php echo $button_view; ?>"><i class="fa fa-eye"></i></a><?php } ?>

 

и вставил в нужном месте вышеуказанного файла. Кнопка то появилась, но ведёт на несуществующую страницу. Просьба знатокам подсказать, где косяк, в PHP я абсолютный ноль )

 

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


Этот явно не подойдёт. Между 2 и 3 версиями опенкарта разница в tpl и twig и коды от двойки не годятся для тройки, их нужно править. 

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


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

разница в tpl и twig

ах елы палы
Посмотрите как это сделано

tpl поменять не twig
и echo прtвратить в {{ }}
Это на порядок меньше времени, чем ждать и ничего не делать

 

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

Извините, но вы плохо читаете. Я с самого начала признал, что в PHP не просто ноль, а абсолютный никто )))) 
Всё, что мне нужно - это чтобы кто-то из знающих помог подправить код:

<?php if (isset($product_page)) { ?><a class="btn btn-info" href="<?php echo $product_page; ?>" target="_blank" data-toggle="tooltip" title="<?php echo $button_view; ?>"><i class="fa fa-eye"></i></a><?php } ?>

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

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


5 часов назад, yolbars77 сказал:

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


Непонятно, что и куда у вас могло вписаться. Этого никак не могло получиться на тройке с выше приведенным модулем.
У вас точно третья версия опенкарт? В ней вы вообще никаких изменений не могли бы увидеть
 

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


  • 3 weeks later...
В 19.06.2021 в 08:04, Shureg сказал:


Непонятно, что и куда у вас могло вписаться. Этого никак не могло получиться на тройке с выше приведенным модулем.
У вас точно третья версия опенкарт? В ней вы вообще никаких изменений не могли бы увидеть
 

Не устанавливал я никаких модулей, я уже в начале данной ветки объяснил.  Что я сделал? Полез в Оксторе 2.x, в файле  /admin/view/template/catalog/product_form.tpl нашёл участок кода 

 <?php if (isset($product_page)) { ?><a class="btn btn-info" href="<?php echo $product_page; ?>" target="_blank" data-toggle="tooltip" title="<?php echo $button_view; ?>"><i class="fa fa-eye"></i></a><?php } ?>

 

Это код кнопки в админке на странице редактирования товара, при нажатии на данную кнопку открывается карточка редактируемого товара. Этот код я вставил вручную перед записью "<button type="submit" form="form-product" data-toggle="tooltip" title="{{ button_save }}" class="btn btn-primary"><i class="fa fa-save"></i></button>" в файле /admin/view/template/catalog/product_form.twig третьей версии Опенкарта.  Кнопка в админке появилась, встала рядом с кнопкой сохранения изменений, как и ожидалось. Однако при нажатии на новую кнопку открывается страница ошибки, а не карточка товара. 

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


В 19.06.2021 в 08:27, Shureg сказал:

Переделал мод выше, не проверял. Попробуйте, вдруг получится
 

view.buttons3.ocmod.xml.zip 1 \u043a\u0411 · 2 downloads

Увы, не установился ни в zip формате, ни в распакованном виде. 

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


Вот такую кнопку я хочу в Русской сборке Опенкарт версии 3.0.3.7 (rs.1) . Эта кнопка на странице редактирования товара, при клике на неё в новой вкладке браузера открывается карточка товара. Это удобно. 

 

Screenshot_1.jpg

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


6 часов назад, yolbars77 сказал:

Этот код я вставил вручную перед записью

Это бесполезное действие, в twig не работает php код. Совсем, никак.
 

 

6 часов назад, yolbars77 сказал:

Увы, не установился ни в zip формате, ни в распакованном виде. 

Я с названием файла ошибся, уберите xml, переименуйте:
view.buttons3.ocmod.zip
Распаковывать не надо, распакованный не установится.

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


54 минуты назад, Shureg сказал:

Это бесполезное действие, в twig не работает php код. Совсем, никак.
 

 

Я с названием файла ошибся, уберите xml, переименуйте:
view.buttons3.ocmod.zip
Распаковывать не надо, распакованный не установится.

Теперь установилось, и... тишина. Ни кнопки нет, ничего не сменилось. 

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


Неужели некому подсказать, что изменить в коде <?php if (isset($product_page)) { ?><a class="btn btn-info" href="<?php echo $product_page; ?>" target="_blank" data-toggle="tooltip" title="<?php echo $button_view; ?>"><i class="fa fa-eye"></i></a><?php } ?> Опенкарта 3x, чтобы кнопка в админке на странице редактирования товара вела в карточку товара?

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


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

Неужели некому подсказать, что изменить в коде <?php if (isset($product_page)) { ?><a class="btn btn-info" href="<?php echo $product_page; ?>" target="_blank" data-toggle="tooltip" title="<?php echo $button_view; ?>"><i class="fa fa-eye"></i></a><?php } ?> Опенкарта 3x, чтобы кнопка в админке на странице редактирования товара вела в карточку товара?

Я не знаю, как вам ещё объяснить, что этот код в 3ос работать не будет. 
Ни при каких изменениях.

И причин две:
1. В twig код php вообще не работает
2. А не в твиг этот код сам по себе все равно работать не будет, прежде чем выводить переменную, ее надо создать.

 

 

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

Теперь установилось, и... тишина. Ни кнопки нет, ничего не сменилось. 

А вы модификаторы обновляли? Смотрели, появились или нет изменения в том самом твиг-файле (в кэеше модфикаторов), который вы упорно пытаетесь в php научить.

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


5 часов назад, Shureg сказал:

Я не знаю, как вам ещё объяснить, что этот код в 3ос работать не будет. 
Ни при каких изменениях.

И причин две:
1. В twig код php вообще не работает
2. А не в твиг этот код сам по себе все равно работать не будет, прежде чем выводить переменную, ее надо создать.

 

 

Ваши изречения из двух пунктов мне и самому известны, они лишние. Я уважаю то, что вы знаете php намного больше меня. Не понимаю ваше желание вставить красивое словцо, не вникнув в проблему. Почитайте мою тему с самого начала... Благо, переписки не так уж много и читать долго не придётся! Я с самого начала поднял тему О ТОМ, ЧТО код php в twig не работает, сам и написал, что "между 2 и 3 версиями опенкарта разница в tpl и twig и коды от двойки не годятся для тройки, их нужно править." И попросил помочь изменить php код, в котором я не силён.     

 

 

5 часов назад, Shureg сказал:

 

А вы модификаторы обновляли? Смотрели, появились или нет изменения в том самом твиг-файле (в кэеше модфикаторов), который вы упорно пытаетесь в php научить.

 

Модификаторы обновляю после каждой вставки модуля или иной операции, очищаю кеш CMS, чищу кеш браузера.  Ваш код, увы, к положительным изменениям не привёл, кнопка и та не появилась. Более того, в тот самый твиг файл попытался вручную вставить отрывок вашего кода:                    

{% if $product_link %}
<a href="{{ product_link }}" data-toggle="tooltip" target="_blank" class="btn btn-default" title="{{ $button_preview_product }}"><i class="fa fa-eye"></i></a>
{% endif %} 

в итоге, этот код приводит к ошибке. Кнопка открытия карточки товара не появляется, а вот клик по кнопке редактирования товара приводит к ошибке "Сайт такой-то пока не может обработать этот запрос"

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


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

И попросил помочь изменить php код, в котором я не силён.     

Бессмысленный какой-то разговор. Код php нельзя изменить, чтобы он работал в twig. Как еще это донести, я не знаю.
И только правкой twig вы никак не выведите нужную вам кнопку, нельзя отобразить переменную, не задав ее в контроллере. Вам надо изменять файл контроллера, а не только twig. Так что вставлять туда огрызки кода - занятие бесперспективное.
У вас уже есть окмод, смотрите, что и где он меняет.
 

 

7 минут назад, yolbars77 сказал:

в итоге, этот код приводит к ошибке. Кнопка открытия карточки товара не появляется, а вот клик по кнопке редактирования товара приводит к ошибке "Сайт такой-то пока не может обработать этот запрос"

Этот код в принципе не способен привести к такой ошибке, даже если его воткнуть от балды в любое место шаблона. Вы что-то не то и не там делаете.

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


17 минут назад, Shureg сказал:

Бессмысленный какой-то разговор. Код php нельзя изменить, чтобы он работал в twig. Как еще это донести, я не знаю.
И только правкой twig вы никак не выведите нужную вам кнопку, нельзя отобразить переменную, не задав ее в контроллере. Вам надо изменять файл контроллера, а не только twig. Так что вставлять туда огрызки кода - занятие бесперспективное.
У вас уже есть окмод, смотрите, что и где он меняет.
 

 

Этот код в принципе не способен привести к такой ошибке, даже если его воткнуть от балды в любое место шаблона. Вы что-то не то и не там делаете.

 

"правкой twig вы никак не выведите нужную вам кнопку, нельзя отобразить переменную, не задав ее в контроллере. Вам надо изменять файл контроллера, а не только twig."  - наконец-то разъяснили полным ответом. Я предполагал, что вставив в файл переделанный из php кода злополучный twig код, я в итоге получу ту самую кнопку. И в мыслях не было, что нужно менять ещё и контроллеры. Спасибо за разъяснение!  

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


Посмотрите на гите тестовую сборку ocStore 3.0.3.7b, может быть в ней уже есть нужный функционал.

И думаю, вполне подошел бы и от 3.0.2, не понимаю зачем переделывать костыли из старых версий.

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

В-общем, там в первоначальном моде еще и категории, и карточка товара, и не все правильно в ОС3. 
Так что вырезал "лишнее", попробуйте лайт-версию. 
Только просомтр из списка товаров
(на дефолтном ос3 работает, проверил)

viewbuttons3.ocmod.zip

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


Всем спасибо, вопрос уже неактуален! Кому интересно - решение оказалось совсем простое... нашёл бесплатный модуль https://opencartforum.com/files/file/8819-quickview-ssylki-dlja-prosmotra-iz-adminki-na-vitrine/  . На Русскую версию Opencard 3 установился без проблем, появились кнопки с админки на пользовательскую часть на страницах редактирования категорий, товаров, отзывов и статей. 

 

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


  • 1 year later...

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

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

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

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

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

Вхід

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

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

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

Important Information

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