如何根据CJ API分类检索产品目录? [英] how to retrieve products catalogs based on category in cj api?

查看:201
本文介绍了如何根据CJ API分类检索产品目录?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用CJ API我们需要检索根据类别所有的产品目录。使用这种类型的概念中的任何一个,请与我分享

I am using CJ API we need to retrieve all products catalogs based on categories. any one used this type of concept please share with me

推荐答案

更新答案
一个小剧本我写了超过在委员会联合测试REST API。

Updated Answer A small script I wrote for testing the REST API over at Commission Junction.

PHP code:

<?php

function ConnectToCJ() 
{
    global $sort_order, $sort_by;

    //
    // Build REST URI for product search. Refer to 
    // documentation for more request parameters.
    //
    $URI = 'https://product-search.api.cj.com/v2/product-search?'.
        'website-id=<INSERT ID>'.   // USE YOUR OWN.
        '&low-price=1'.
        '&records-per-page=25'.
        '&sort-order='. $sort_order .
        '&sort-by='. $sort_by .
        '&keywords='. rawurlencode($_GET['keywords']);

    $context = stream_context_create(
    array(
    'http' => array(
        'method' => 'GET',
        'header' => 'Authorization: ' . // USE YOUR OWN.
            '0012345b5ffdb74cd401e1aade0f69cadca29c834781c0936'.
            'b0b0836383b4e3e8dd7b406612347c3813bda24f8354dd649'.
            '6679031d8bc46f0dea1943a747ae0025/0093500ab1417918'.
            'f621234038b1234e8c4b0b22ea9f9cbc1db37a592247676ae'.
            'c528388bad7a06c9532c46fba2d0815e81e1234a9b25d9173'.
            '2f46f93123444dc1'
        )
    ));

    $response = new SimpleXMLElement(file_get_contents($URI, false, $context));
    return $response;
}

// A separate function to parse data.
function FormatCJResponse($data) 
{
    global $sort_order;

    $ProductList = '<table border="0" cellspacing="2" cellpadding="2" style="width:800px; margin: auto 0px">'.
            '<tr style="font-weight:bold">'.
            '<td><a href="?keywords='. rawurlencode($_GET['keywords']) .'&sort-by=name&sort-order='. SetOrder('name') .'>Product Name</a></td>'.
            '<td>Advertiser Name</td>'.
            '<td><a href="?keywords='. rawurlencode($_GET['keywords']) .'&sort-by=price&sort-order='. SetOrder('price') .'>Price</a></td>'.
            '<td>Description</td>'.
            '<td>Image</td>'.
            '</tr>';

    $attributes = $data->products->attributes();
    if ($attributes->{'total-matched'} == '0')
        $ProductList .= '<tr><td colspan="5">No products found ...</td></tr>';

    foreach ($data->products[0] as $product) 
    {
        // Sanitize data.
        $price = number_format((float)$product->price, 2, '.', ' ');

        $image = '<img src="ImageHandler.php?fileName='. 
                $product->{'image-url'} .'">';

        // Add to list.
        $ProductList .= '<tr><td colspan="5"> </td></tr>'.
        '<tr>'.
        '<td valign="top">'. $product->name .'</td>'.
        '<td valign="top">'. $product->{'advertiser-name'} .'</td>'.
        '<td valign="top">'. $price .' '. $product->currency .'</td>'.
        '<td valign="top">'. $product->description .'</td>'.
        '<td valign="top">'. $image .'</td>'.
        '</tr>';
    }

    $ProductList .= '</table>';
    return $ProductList;
}

// Sorts out individual sorting.
function SetOrder($param)
{
    global $sort_by, $sort_order;

    if ($sort_by == $param && $sort_order == 'asc') {
        $order = 'desc" title="Sort by descending order"';
    } else {
        $order = 'asc" title="Sort by ascending order"';
    }

    return $order;
}

if (isset($_GET['keywords'])) {
    if ($_GET['keywords'] != '') {

        // Sort order.
        if (!isset($_GET['sort-order'])) {
            $sort_order = 'asc';
        } else {
            switch ($_GET['sort-order']) {
            case 'asc':
                $sort_order = 'asc';
                break;
            case 'desc':
                $sort_order = 'desc';
                break;
            default:
                $sort_order = 'asc';
            }
        }

        // Sort by
        if (!isset($_GET['sort-by']))
            $sort_by = 'name';
        else
            $sort_by = $_GET['sort-by'];

        // Connect to CJ and get formatted results.
        $ProductList = FormatCJResponse(ConnectToCJ());
    }
}
?>

只是检查并在$产品列表打印的内容:

Just check for and print the content in $ProductList:

这篇关于如何根据CJ API分类检索产品目录?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆