Xrender
Xrender

Reputation: 1445

using Zend_Service_Ebay_Finding to retrieve sellers items

I wish to retrieve all sellers items using the findItemsAdvanced call of Zend_Service_Ebay_Finding API. I'm a bit confused as to how to use it? has anyone got a example of how this method works? I tried

$response = $finding->findItemsAdvanced('seller=<SELLERNAME>');

But gives me nothing?

Would appreciate any help

Upvotes: 0

Views: 127

Answers (1)

Xrender
Xrender

Reputation: 1445

In the end I overloaded the Zend_Service_Ebay_Finding API and added 2 methods to grab me all the seller info. Maybe this will help anyone else with the same issue.

/**
 * Finds items for a specific seller
 * and a page
 *
 * @param  string            $seller
 * @param  int               $page
 * @return Zend_Service_Ebay_Finding_Response_Items
 */
public function sellerItems($seller, $page = 1){
    // prepare options
    $options = array('itemFilter(0).name' => 'Seller', 'itemFilter(0).value(0)' => $seller, 'paginationInput.entriesPerPage' => 100);
    // do request
    return $this->_findItems($options, 'findItemsAdvanced');
}

/**
 * Finds items for a specific seller - iterates through pages
 * and a page
 *
 * @param  string            $seller     
 * @return array
 */
public function getAllSellerItems($seller) {
    $page1 = $this->sellerItems($seller);
    $pages = $page1->paginationOutput->totalPages;
    $items = $page1->searchResult->item;

    $full = array();
    foreach($items as $item) {
        $full[] = $item;
    }
    if($pages > 1) {
        for($i = 2;$i <= $pages; $i ++) {               
            $results =  $this->sellerItems($seller, $i);
            $items = $results->searchResult->item;
            foreach($items as $item) {
                $full[] = $item;
            }   
        }           
    }
    return $full;
}

Upvotes: 1

Related Questions