Jump to content
Sign in to follow this  
chaser

Как из своего скрипта сгенерировать ссылку через opencart

Recommended Posts

Есть отдельный ПХП файл в котором я отображаю метатеги всех товаров (делаю обычные селекты из БД из соотв. таблицы).

 

Вот мне нужно для каждого товара добавить ссылку на него. Т.е. я получил ID товара и категории, сгенерировать собираюсь через стандартное

echo $this->url->link('product/product', 'path=' . $category_id . '&product_id=' . $row['product_id']);

Но, естесственно мой скрипт этого не знает.

 

Вопрос: как подключить в свой файл нужные модули, тиап этого

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

чтобы мой скрипт смог с ними работать?

Share this post


Link to post
Share on other sites

Никто не в курсе?

Share this post


Link to post
Share on other sites

Порекомендовали добавить

require_once $_SERVER['DOCUMENT_ROOT'].'/system/startup.php';

но не помогло

Share this post


Link to post
Share on other sites

а если так 

require_once $_SERVER['DOCUMENT_ROOT'].'/config.php';
require_once $_SERVER['DOCUMENT_ROOT'].'/system/startup.php';
$url = new Url(HTTP_SERVER, HTTP_SERVER);
вызывать так 
echo $url->link('product/product', 'path=' . $category_id . '&product_id=' . $row['product_id']);

Share this post


Link to post
Share on other sites

Даже добавив эти 3 строки скрипт не хочет отрабатывать

Share this post


Link to post
Share on other sites

Даже добавив эти 3 строки скрипт не хочет отрабатывать

 

Виноват.

Теперь все ОК.

Благодарю!

Share this post


Link to post
Share on other sites

Теперь возникла необходимость получить информацию о категории.

Но там немного другой принцип:

$cat_info = ...->model_catalog_category->getCategory($row['category_id']);

$url соответственно не работает.

в оригинале вместо ... стоит $this

 

Как сделать чтобы из моего скрипта это тоже работало?

Share this post


Link to post
Share on other sites

Сделайте этот файл отдельным контроллером - получите доступ ко всему функционалу OC

Share this post


Link to post
Share on other sites

Сделайте этот файл отдельным контроллером - получите доступ ко всему функционалу OC

 

И как это сделать?

 

Хотя мне вполне хватило бы аналога решения предыдущей задачи

Share this post


Link to post
Share on other sites

И как это сделать?

 

Хотя мне вполне хватило бы аналога решения предыдущей задачи

 

Создайте файл нового контроллера, и в нем делайте что хотите, все будет работать в контексте движка, можно будет в полной мере пользоваться функциями движка.

Share this post


Link to post
Share on other sites

Создайте файл нового контроллера, и в нем делайте что хотите, все будет работать в контексте движка, можно будет в полной мере пользоваться функциями движка.

 

А по шагам можете расписать?

Никогда не создавал просто.

Share this post


Link to post
Share on other sites

А по шагам можете расписать?

Никогда не создавал просто.

 

На примере контроллера админки:

  1. Копируете любой контроллер, например common/home.php
  2. Переименовываете home.php в chaser.php,
  3. Открываете файл переименовываете ControllerCommonHome в ControllerCommonChaser
  4. Теперь он будет доступен по адресу /admin/index.php?route=common/chaser (не забудьте зайти в Группы пользователей, чтобы обновить права для нового раздела)

 

Рабочий код нужно писать в функции index()

Share this post


Link to post
Share on other sites

Ну у меня так: создал папку /scripts/, а в ней лежат свои файлы пхп.

 

Положим создал я тот контроллер.

Ну и как мне его теперь приинклудить, чтобы в своих файлах использовать этот метод:

$cat_info = ...->model_catalog_category->getCategory($row['category_id']);

Share this post


Link to post
Share on other sites

остуди голову.

зачем тебе "отдельные файлы с функционалом opencart`a"?

для получения ссылки на товар можно написать "микроконтроллер" :ugeek: для opencart`a, который будет отдавать ссылку при получении product_id/category_id/manufacturer_id/information_id...

для получения информации о категории - пиши sql-запрос и БЕРИ необходимые ДАННЫЕ НАПРЯМУЮ ИЗ БД. в чем проблема?

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

Share this post


Link to post
Share on other sites

Спасибо, так и сделал, через бд )

Вопрос закрыт...

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Similar Content

    • By q3dm0
      800.00 руб
      Скачать/Купить дополнение


      Imagemanager (Редактор и пакетная загрузка изображений для магазина)+галерея ScangalleryPack
      Менеджер изображений, он же и обработчик, с богатым функционалом, все, что нужно для обработки изображений на лету в нем есть, некоторый аналог швейцарского армейского ножа - этот модуль является идеальной заменой старого менеджера изображений, и Вы перестанете терять огромное количество времени на редактирование изображений.
       
      Он поддерживает добавление нескольких изображений одновременно, просмотр истории (сохраняет последнюю открытую папку), перетаскивание загружаемых изображений, изменение размера/поворота, поиск изображений/папок  и многое другое!
      Ну и в комплект идет полноценная адаптивная галерея для организации своего блога, страницы новостей или фотогалереи с описанием товара или целой группы товаров с возможностью объединения галереи и товаров по тегам на сайте для более результативного поиска последних. Полноценный модуль imagemanager с возможностью заливать на лету тысячи фотографий  для своих товаров, баннеров, обрабатывать их, перетягивать в нужном порядке методом drugNdrop и не только, теперь Вы сможете это, с новым пакетом ScangalleryPack.
      модуль Imagemanager на базе jquery файл-менеджера elFinder для версий opencart 1.5.X  -2.X – 3.X; галерея на базе jquery галереи blueimp-gallery конечно же с  мультизагрузкой изображений, а также с более простой поисковой оптимизацией Вашего сайта, теперь для каждой картинки можно присвоить свой alt и title прям из под админ панели, ну и само собой, в данный пакет интегрирован модуль сортировки изображений методом перетягивания (Sortable module). Теперь ужасная и нудная работа по добавлению изображений к товарам и баннерам на сайте сводиться к минимуму, в данной версии Вы можете:
      пакетная загрузка картинок на сервер;   удаление файлов в корзину; drugNDrop пакетная загрузка изображение на сервер; обработка изображений (обрезка, поворот и другие приятности прям в окне Вашего броузера); создание, переименование, удаление, перемещение, копирование (вставка), архивирование, как изображений, так и папок, в том числе пакетная; различные варианты просмотра изображений и папок и т.д. многоязычность (два языка (En, Ru) + языки elFinder); легкость обновления версий (для опытных пользователей!); автоматическая нумерация изображений; отсутствие перезаписи системных файлов opencart; объектный метод определения загрузки файлов, теперь Вы избавитесь от лишних надоедливых кнопок внизу; изменять любое изображение в админ панели обычным выбором, есть как встроенный менеджер, так и Imagemanager на выбор.  добавление водяного знака к изображению, работает "НЕ С КЕШЕМ" изображения, водяной знак накладывается сразу при загрузке изображения на сервер,  неплохой вариант для тех кто только что открыл свой интернет магазин и не хочет чтобы его изображения были добавлены на сторонние сайты;  автоматическая регулировка размеров изображения (высота, ширина) при загрузке изображения на сервер, работает при загрузке изображений выше тех размеров которые необходимо получить: 1024*768px -> 800*600px, основан на методе плагина elFinder AutoResize; добавлен ftp клиент для менеджера, теперь можно выгружать на свой сайт картинки из других источников, подключившись по ftp (пока убран, будет полный набор - ftp, onedrive и так далее в 1.12); загрузка изображение текстового редактора summernote (одиночное/пакетное); пакетное добавление изображений в раздел баннеры (Загрузка на сервер и добавление в карточку баннера); автоматическая транслитерация именах изображений, если у Вас на сервере имеются файлы с русскими символами посвящается данный функционал, пора заменить все имена файлов на латиницу; автоматическая замена символов в именах изображений, при загрузке можно контролировать замену символов (которые могут доставить не мало проблем при хранении, переносе сайта на другой хостинг), например на нижний пробел; поддержка тем для elfinder (помимо стандартного еще 4 шт.)      
      Посмотреть работу модуля можно на следующем видео: ссылка
       
      Если возникли проблемы которые требуют моего вмешательства, заранее подготовьте доступы к админке и фтп, установка и решение проблем связанные с ней бесплатны.
       
       
      Добавил q3dm0 Добавлено 08.03.2017 Категория Обмен данными Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 3.0
      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.5.1
      1.5.5
      1.5.4.1
      1.5.3.1 ocStore 3.0
      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
      1.5.3.1
      1.5.2.1
      1.5.1.3 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х
      OcShop 1.5.6.4.х Обращение к серверу разработчика Нет Старая цена 0  
    • By q3dm0
      Менеджер изображений, он же и обработчик, с богатым функционалом, все, что нужно для обработки изображений на лету в нем есть, некоторый аналог швейцарского армейского ножа - этот модуль является идеальной заменой старого менеджера изображений, и Вы перестанете терять огромное количество времени на редактирование изображений.
       
      Он поддерживает добавление нескольких изображений одновременно, просмотр истории (сохраняет последнюю открытую папку), перетаскивание загружаемых изображений, изменение размера/поворота, поиск изображений/папок  и многое другое!
      Ну и в комплект идет полноценная адаптивная галерея для организации своего блога, страницы новостей или фотогалереи с описанием товара или целой группы товаров с возможностью объединения галереи и товаров по тегам на сайте для более результативного поиска последних. Полноценный модуль imagemanager с возможностью заливать на лету тысячи фотографий  для своих товаров, баннеров, обрабатывать их, перетягивать в нужном порядке методом drugNdrop и не только, теперь Вы сможете это, с новым пакетом ScangalleryPack.
      модуль Imagemanager на базе jquery файл-менеджера elFinder для версий opencart 1.5.X  -2.X – 3.X; галерея на базе jquery галереи blueimp-gallery конечно же с  мультизагрузкой изображений, а также с более простой поисковой оптимизацией Вашего сайта, теперь для каждой картинки можно присвоить свой alt и title прям из под админ панели, ну и само собой, в данный пакет интегрирован модуль сортировки изображений методом перетягивания (Sortable module). Теперь ужасная и нудная работа по добавлению изображений к товарам и баннерам на сайте сводиться к минимуму, в данной версии Вы можете:
      пакетная загрузка картинок на сервер;   удаление файлов в корзину; drugNDrop пакетная загрузка изображение на сервер; обработка изображений (обрезка, поворот и другие приятности прям в окне Вашего броузера); создание, переименование, удаление, перемещение, копирование (вставка), архивирование, как изображений, так и папок, в том числе пакетная; различные варианты просмотра изображений и папок и т.д. многоязычность (два языка (En, Ru) + языки elFinder); легкость обновления версий (для опытных пользователей!); автоматическая нумерация изображений; отсутствие перезаписи системных файлов opencart; объектный метод определения загрузки файлов, теперь Вы избавитесь от лишних надоедливых кнопок внизу; изменять любое изображение в админ панели обычным выбором, есть как встроенный менеджер, так и Imagemanager на выбор.  добавление водяного знака к изображению, работает "НЕ С КЕШЕМ" изображения, водяной знак накладывается сразу при загрузке изображения на сервер,  неплохой вариант для тех кто только что открыл свой интернет магазин и не хочет чтобы его изображения были добавлены на сторонние сайты;  автоматическая регулировка размеров изображения (высота, ширина) при загрузке изображения на сервер, работает при загрузке изображений выше тех размеров которые необходимо получить: 1024*768px -> 800*600px, основан на методе плагина elFinder AutoResize; добавлен ftp клиент для менеджера, теперь можно выгружать на свой сайт картинки из других источников, подключившись по ftp (пока убран, будет полный набор - ftp, onedrive и так далее в 1.12); загрузка изображение текстового редактора summernote (одиночное/пакетное); пакетное добавление изображений в раздел баннеры (Загрузка на сервер и добавление в карточку баннера); автоматическая транслитерация именах изображений, если у Вас на сервере имеются файлы с русскими символами посвящается данный функционал, пора заменить все имена файлов на латиницу; автоматическая замена символов в именах изображений, при загрузке можно контролировать замену символов (которые могут доставить не мало проблем при хранении, переносе сайта на другой хостинг), например на нижний пробел; поддержка тем для elfinder (помимо стандартного еще 4 шт.)      
      Посмотреть работу модуля можно на следующем видео: ссылка
       
      Если возникли проблемы которые требуют моего вмешательства, заранее подготовьте доступы к админке и фтп, установка и решение проблем связанные с ней бесплатны.
       
       
    • By Natalya2020
      Есть проект, разработан на основе OpenCart. Требуется программист для внесения доработок. ТЗ по запросу.
    • By Eliy
      Добрый день! Возник вопрос: как добавить модуль, к примеру, "Категории" в header.tpl?
      На форумах смотрел, нашёл устаревший способ:
          В директории "/catalog/controller/common/header.php"
        Перед "$this->render();"(этой строки нет в файле) добавить такую строку:
       
      $this->children = array('module/information');      После чего в шаблоне template/common/header.tpl можно вывести переменную "$information", которая хранит готовый html код
       
      Однако, способ устарел, есть ли возможность это сделать в версии 2.3 OcStore/Opencart?
      Благодарю за вашу помощь!
    • By legioner26
      555.00 руб
      Скачать/Купить дополнение


      Сортировка товаров в заказе по категориям с учетом остатков
      Разработан модификатор с сортировкой товаров в заказе по категориям в админ панели, в пользовательской части, в письме заказчику и письме администратора магазина.
      Данный функционал в разы упрощает работу менеджеров в подборе номенклатуры для выставления счетов.
      Так же в админке в заказах добавлена колонка производителя, фото товара и учет остатков по складу с возможностью сохранять выбор.
      Установка:
      Устанавливаете модификатор через "Установка расширений", далее в модификаторах чистим кешь и обновляем.
       
      Добавил legioner26 Добавлено 27.12.2017 Категория Покупки, оформление заказа, корзина Системные требования Метод активации Без активации Ioncube Loader Нет OpenCart 2.3
      2.2
      2.1
      2.0 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х Обращение к серверу разработчика Нет Старая цена 900  
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.