Jump to content

Recommended Posts

Web API

Скачать/Купить дополнение

Небольшой модуль для OpenCart 1.5.3+, позволяющий получать данные о товарах и категориях из интернет магазиа в формате JSON. Дальше эти данные можно использовать для чего угодно, к примеру, для вывода товаров из магазина на другом своем сайте.

Собственно, модуль в первую очередь расчитан на разработчиков. Первая версия умеет:

  • Получать список категорий
  • Получать список товаров в категории
  • Получать полную информацию о товаре

Патчи приветствуются. Исходные коды доступны на GitHub: https://github.com/ethernet1/opencart-webapi. Документация на английском с примерами находится внутри архива. Там же можно найти ссылку на русскую документацию.

P.S. В админке модуль находится в разделе Дополнения > Каналы продвижения.


 

  • +1 8

Share this post


Link to post
Share on other sites

в доках (https://github.com/ethernet1/opencart-webapi/blob/master/README.md) в примерах нет инфы про API_KEY в запросе.

есть только упоминание API_KEY в описании обработки ошибок.

Share this post


Link to post
Share on other sites

А на тебе жмяк в карму, мил человек. А оценку модулю не ставлю - как потестю так и выскажу)

P.S. А сообщение это тут оставляю для себя - чтобы "обратный путь" найти, когда понадобится.

Share this post


Link to post
Share on other sites

zenwalker, а возможна адаптация под Яндекс Острова?

  • +1 1

Share this post


Link to post
Share on other sites

zenwalker, а возможна адаптация под Яндекс Острова?

Если написано как в описании, то почему нет, ведь данные все о товаре передаёт, да и о категориях.

А Вы попробуйте и расскажите)

Share this post


Link to post
Share on other sites

Помогите новичку! В модуле Web Api требует ключ,подскажите что это за ключ и где его найти.Заранее благодарен всем отозвавшимся.

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

Документация кривая, так и не нашел как передать API_KEY, где указать нашел.

Share this post


Link to post
Share on other sites

Документация кривая, так и не нашел как передать API_KEY, где указать нашел.

нашел, просто нужно в строке передать key= ключик указанный в настройках web api фида

Share this post


Link to post
Share on other sites

как получить еще и URL товара? У меня включены SEO URL

Share this post


Link to post
Share on other sites

Всем привет! Скажите, а может кто-нибудь доработать этот модуль, чтобы у него появилась функция создавать и сохранять заказ в базе?

Спасибо?

Share this post


Link to post
Share on other sites

Всем привет! Скажите, а может кто-нибудь доработать этот модуль, чтобы у него появилась функция создавать и сохранять заказ в базе?

Спасибо?

 

Есть модуль, но платный http://opencart-api.com/

 

Походже что он единственный в своей роде для CRUD.

Share this post


Link to post
Share on other sites

В модуле ошибка с картинками товара. И с именами тегов маленькие опечатки)

Исправления:

 
foreach ($additional_images as $additional_image) {
$images[] = $this->model_tool_image->resize($additional_image['image'], $this->config->get('config_image_additional_width'), $this->config->get('config_image_additional_height'));
}
 
Форкнул на гитхабе

Share this post


Link to post
Share on other sites

Есть модуль, но платный http://opencart-api.com/

 

Походже что он единственный в своей роде для CRUD.

 

Смотреть надо здесь

https://github.com/opencart/opencart/blob/master/upload/catalog/controller/api/cart.php

 

 

Надо только $this->request->post['product_id']) забирать по другому. А так работает. Тоже хотел расширить API в этом направлении

Share this post


Link to post
Share on other sites

За модуль огромное спасибо.

 

Опечатка в коде: строка 114 в catalog\controller\feed\web_api.php  'pirce' вместо 'price'.  Модуль скачивал с GitHub

Share this post


Link to post
Share on other sites

Как она работает ?

1) Залил на сайт.

2) Дополнения > Каналы продвижения  (включил, вставил api)

3) ???
Не загружает товары с сайта 

Share this post


Link to post
Share on other sites

Документация кривая, так и не нашел как передать API_KEY, где указать нашел.

Аналогично! Напишите пожалуйста понятнім язіком где взять єтот ключь? если просто прописать  то как его вызвать? по всем ссылкам получаю {"success":false,"code":20,"message":"Invalid secret key"} 

Share this post


Link to post
Share on other sites

Чтоб не было проблем с урлами надо это:

 

 

private function getCategoriesTree($parent = 0, $level = 1) {
$this->load->model('catalog/category');
$this->load->model('tool/image');


$result = array();


$categories = $this->model_catalog_category->getCategories($parent);


if ($categories && $level > 0) {
$level--;


foreach ($categories as $category) {


if ($category['image']) {
$image = $this->model_tool_image->resize($category['image'], $this->config->get('config_image_category_width'), $this->config->get('config_image_category_height'));
} else {
$image = false;
}


$result[] = array(
'category_id'   => $category['category_id'],
'parent_id'     => $category['parent_id'],
'name'          => $category['name'],
'image'         => $image,
'href'          => $this->url->link('product/category', 'category_id=' . $category['category_id']),
'categories'    => $this->getCategoriesTree($category['category_id'], $level)
);
}


return $result;
}
}
Заменить на это:
 
private function getCategoriesTree($parent = 0, $level = 1, $current_path = '') {
        $this->load->model('catalog/category');
        $this->load->model('tool/image');


        $result = array();


        $categories = $this->model_catalog_category->getCategories($parent);


        if ($categories && $level > 0) {
            $level--;


            foreach ($categories as $category) {
                if (!$current_path) {
                    $new_path = $category['category_id'];
                } else {
                    $new_path = $current_path . '_' . $category['category_id'];
                }


                if ($category['image']) {
                    $image = $this->model_tool_image->resize($category['image'], $this->config->get('config_image_category_width'), $this->config->get('config_image_category_height'));
                } else {
                    $image = false;
                }


                $result[] = array(
                    'category_id' => $category['category_id'],
                    'parent_id' => $category['parent_id'],
                    'name' => $category['name'],
                    'image' => $image,
                    'href' => $this->url->link('product/category', 'path=' . $new_path),
                    'categories' => $this->getCategoriesTree($category['category_id'], $level)
                );
            }


            return $result;
        }
    }

 

Share this post


Link to post
Share on other sites

Доброго дня. Данные экспортируются в json формат. Документации правда не нашел по ссылкам. А вопрос такой: можно ли импортировать эти данные в другой сайт на опен карте? И собственно как? Подскажите хотя бы направление куда двигаться?

Share this post


Link to post
Share on other sites

нашел, просто нужно в строке передать key= ключик указанный в настройках web api фида

Привет!

Подскажи пожалуйста где указать это ключик надо

Share this post


Link to post
Share on other sites

Доброго дня. Данные экспортируются в json формат. Документации правда не нашел по ссылкам. А вопрос такой: можно ли импортировать эти данные в другой сайт на опен карте? И собственно как? Подскажите хотя бы направление куда двигаться?

Да собственно нужен модуль чтобы получать(обрабатывать) эти данные на другом сайте

Share this post


Link to post
Share on other sites

Да собственно нужен модуль чтобы получать(обрабатывать) эти данные на другом сайте

Список главных категорий я получаю через этот код:

<?php
$jsonString = file_get_contents("http://ваш домен/index.php?route=feed/web_api/categories&parent=0&level=2&key=ваш ключ");

$api_shop = json_decode( $jsonString, true );

for ($i = 0; $i < count($api_shop['categories']); $i++)
  { 
    echo ('<a href="' . $api_shop['categories'][$i]['href'] . '" title="' . $api_shop['categories'][$i]['name'] . '" style="font-size:16px;">' . $api_shop['categories'][$i]['name'] . '</a><br/>');
  }
?>

Share this post


Link to post
Share on other sites

Нужен клиент обработчик ответов

Share this post


Link to post
Share on other sites

Кто смог добавить в API отображение похожих товаров? Опишите как это сделать пожалуйста!

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 Mishan
      Здравствуйте. Работаю над интеграцией API, первый такой опыт. Есть пункт, в котором написано "В теле запроса передаётся контракт в формате JSON, описывающий новый счет". Как я понимаю, в запросе, который я отправляю для авторизации на сайт в котором необходимо отправлять данные, я должен передавать body в формате json.
      Пример запроса:
      Body: 

          "Number": "аб324",  
          "Date": "2014-02-07T00:00:00.000Z", 
          "WithNds": true, 
          "SumsWithNds": true, 
          "Comment": "test comment", 
          "BankAccount": { 
            "AccountNumber": "40802810363030003088", 
            "Bank": { 
              "Name": "ОАО \"БАНК\"", 
              "Bik": "23424", 
              "City": "МОСКВА", 
              "CityType": "Г.", 
              "CorrAccount": "2342342342342342" 
            }  
       
      Как это можно реализовать? Спасибо!
    • By RamilBgd
      Всем привет!
       
      Скажите пожалуйста, кто работал с модулем RESTful для OpenCart. Где можно найти пример работы с этим модулем и описание всех методов?
      Так же хотел поинтересоваться, какие бывают аналоги этого модуля? может есть что-то бесплатное и такое же функциональное?
    • By RamilBgd
      Всем привет!
       
      Помогите пожалуйста с установкой модуля RESTful API (https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=15445)
      В архиве под названием upload находится следующая структура папок:

      admin
          controller
                feed
          language
                feed
          view
                feed
       
      catalog
          controller
                feed
       
      В инструкции по установке говорится:
      "2. Upload the "catalog" & "admin" folder to your opencart installation folder"
       
      Тут мне не совсем понятно, о какой установочной папке идет речь?
      Правильно я понимаю, что нужно папки feed перенести в одноименные папки в соответсвии со структурой каталогов на сервере? Скопировал, но это не сработало, модуль не виден из админки.

      Подскажите пожалуйста как мне правильно установить данный модуль?
      Вот инструкция по установке, но линя я не правильно делаю что-то, либо инструкция не соответствует действительности

      1. Navigate to your opencart root folder using an FTP program
      2. Upload the "catalog" & "admin" folder to your opencart installation folder
      3. Go to your admin area in Extensions->Product Feeds and enable your REST API extension
         You have to fill the security key field (eg. 12345 or anything else)
         You have to use this key in your REST URLs, eg:
        http://example.com/orders/key/12345
        http://example.com/products/key/12345
    • By php5
      * вероятно OC 2.2. я его не ковырял, жду комментариев исполнителя относительно целесообразности.
       
      ТЗ
      есть магазин на 2.1 (пока на 1.5, но всё это дело конвертну аккуратно) есть МС, из OC туда попадают заказы через одно место надо так:
      остатки и цены в магазине, МС забирает их из OC
      при создании заказа в МС, заказанный товар вычитается со склада в OC
      при изменении статуса в МС, он же меняется в ОС, придётся подружить это с почтовым респондером видимо Advanced Professional Email Template  или предложите аналог (т.е. почтовые события должны иметь связь с изменением статуса заказа)
      если в OC поменяли статус заказа, в МС тоже поменялся
      покупатель из ОС заводится в МС, в обратном порядке нет надо как-то победить дубли номеров заказов 1254 (2,3,) и прочуую фигню в МС если заказы создаются в МС. Я однажды победил, но забыл где и как... Жесть. дублей в спраочнике товаров не должно быть такие дела
    • By zenwalker
      Небольшой модуль для OpenCart 1.5.3+, позволяющий получать данные о товарах и категориях из интернет магазиа в формате JSON. Дальше эти данные можно использовать для чего угодно, к примеру, для вывода товаров из магазина на другом своем сайте.
      Собственно, модуль в первую очередь расчитан на разработчиков. Первая версия умеет:
      Получать список категорий
      Получать список товаров в категории
      Получать полную информацию о товаре

      Патчи приветствуются. Исходные коды доступны на GitHub: https://github.com/ethernet1/opencart-webapi. Документация на английском с примерами находится внутри архива. Там же можно найти ссылку на русскую документацию.
      P.S. В админке модуль находится в разделе Дополнения > Каналы продвижения.
  • 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.