public function fetch($url) { $id = $this->get_id($url); if (!$id) { return false; } $key = 'taobao_' . $id; $item_site = M('item_site')->where(array('code' => $this->_code))->find(); $api_config = unserialize($item_site['config']); //使用淘宝开放平台API vendor('Taobaotop.TopClient', COMMON_PATH . 'Vendor/'); vendor('Taobaotop.RequestCheckUtil', COMMON_PATH . 'Vendor/'); vendor('Taobaotop.Logger', COMMON_PATH . 'Vendor/'); $tb_top = new \Common\Vendor\Taobaotop\TopClient(); $tb_top->appkey = $api_config['app_key']; $tb_top->secretKey = $api_config['app_secret']; $req = $tb_top->load_api('ItemGetRequest'); $req->setFields('detail_url,title,nick,pic_url,price,item_img'); $req->setNumIid($id); $resp = $tb_top->execute($req); if (!isset($resp->item)) { return false; } $item = (array) $resp->item; $result = array(); $result['item']['key_id'] = $key; $result['item']['title'] = strip_tags($item['title']); $result['item']['price'] = $item['price']; $result['item']['img'] = $item['pic_url']; $result['item']['url'] = $item['detail_url']; //商品相册 $result['item']['imgs'] = array(); $item_imgs = (array) $item['item_imgs']; $item_imgs = (array) $item_imgs['item_img']; foreach ($item_imgs as $_img) { $_img = (array) $_img; if ($_img['url']) { $result['item']['imgs'][] = array('url' => $_img['url'], 'ordid' => $_img['position']); } } if (empty($result['item']['imgs'])) { $result['item']['imgs'][] = array('url' => $result['item']['img']); } //淘客信息 $req = $tb_top->load_api('TaobaokeItemsDetailGetRequest'); $req->setFields("click_url"); $req->setNumIids($id); $resp = $tb_top->execute($req); if (isset($resp->taobaoke_item_details)) { $taoke = (array) $resp->taobaoke_item_details->taobaoke_item_detail; if ($taoke['click_url']) { $result['item']['url'] = $taoke['click_url']; } } $result['item']['url'] = \Common\ORG\Url::replace($result['item']['url'], array('spm' => '2014.21069764.' . $api_config['app_key'] . '.0')); return $result; }
private function _publish_insert($item, $cate_id, $users) { //随机取一个用户 $user_rand = array_rand($users); $item['title'] = strip_tags($item['title']); $item['click_url'] = \Common\ORG\Url::replace($item['click_url'], array('spm' => '2014.21069764.' . $this->_tbconfig['app_key'] . '.0')); $insert_item = array('key_id' => 'taobao_' . $item['num_iid'], 'taobao_sid' => $item['taobao_sid'], 'cate_id' => $cate_id, 'uid' => $users[$user_rand]['id'], 'uname' => $users[$user_rand]['username'], 'title' => $item['title'], 'intro' => $item['title'], 'img' => $item['pic_url'], 'price' => $item['price'], 'url' => $item['click_url'], 'rates' => $item['commission_rate'] / 100, 'likes' => $item['likes'], 'imgs' => $item['imgs']); //如果多图为空 if (empty($item['imgs'])) { $insert_item['imgs'] = array(array('url' => $insert_item['img'])); } $result = D('item')->publish($insert_item); return $result; }