合优网 马甲APP 多云电商 对接 Discuz 西瓜商城 方案


本方案理论上更新APP服务端也不会有影响...


  1. 在discuz的api目录下创建文件:x_xigua_sp.php

<?php
header('Content-Type: text/plain');
include(__DIR__."/../config/config_global.php");
$dbhost = $_config['db']['1']['dbhost'];
$dbuser = $_config['db']['1']['dbuser'];
$dbpw = $_config['db']['1']['dbpw'];
$dbname = $_config['db']['1']['dbname'];
$hy = new mysqli($dbhost,$dbuser,$dbpw,$dbname);
mysqli_set_charset($hy,'utf8');
if($hy->connect_error){
    die("连接失败: " . $conn->connect_error);
}
if($_GET['search']){
    $search = $_GET['search'];
    $sql_goodids = "SELECT * FROM pre_xigua_sp_good WHERE title LIKE '%$search%' and stat=1 ORDER BY displayorder DESC limit 20";
}else{
    $sql_goodids = "SELECT * FROM pre_xigua_sp_good WHERE srange2 LIKE '%推荐%' and stat=1 ORDER BY displayorder DESC limit 20";
}
$re_goodids = $hy->query($sql_goodids);
if ($re_goodids->num_rows > 0) {
    while($row = $re_goodids->fetch_assoc()) {
        $row['jieshao'] = null;
        $data[] = $row;
    }
}
echo json_encode($data);
mysqli_close($hy);
?>


2.新建一个站点(用于跳转

    添加文件:/h5/index/index.php

<?php
include(__DIR__.'/../../sysconfig.php');
?>
<script>
var nn = window.location.hash;
var url = '<?php echo $url;?>' + nn;
url = url.replace("#/pages/good/detail?id=/", "");
window.location.href= url; 
</script>

    添加文件:/mobile/index/index.php

<?php
include(__DIR__.'/../../sysconfig.php');
?>
<script>
var nn = window.location.hash;
var url = '<?php echo $url;?>' + nn;
url = url.replace("#shop/good/detail?id=/", "");
window.location.href= url; 
console.log(url);
</script>

    添加文件:/shop/api/search/search/index.php

<?php
/* 
 * 马甲APP商城商品搜索获取接口
 * /shop/api/search/search?secret=98724d61ebc05f2bf32895583c54e00dd10c&search=%E7%BB%99%E4%BD%A0%E4%BB%AC&page=1&step=2&id=
 */
header('Content-Type: text/plain');
include(__DIR__.'/../../../../sysconfig.php');
$url = $url.'api/x_xigua_sp.php?search='.$_GET['search'];
$cn = json_decode(file_get_contents($url)); $hot_good = array();

if(count($cn)>0){
    foreach ($cn as $key => $v) {
        $album = $v->album;
        $album = unserialize($album);
        $fengmian = $album[0];
        $goods[] = array(
            'id' => '/plugin.php?id=xigua_sp&ac=view&gid='.$v->id,
            'business_id' => $v->id,
            'out_url' => '',
            'title' => $v->title,
            'price' => $v->dprice * 100,
            'price_line' => $v->disprice,
            'price_show' => '¥'.$v->dprice,
            'price_line_show' => '¥'.$v->disprice,
            'price_vip' => '¥'.$v->disprice,
            'price_vip_show' => '¥'.$v->dprice,
            'pic' => $fengmian,
            'shelves_time' => date("Y-m-d H:i:s",$v->crts),
            'ump_type' => '10',
            //ump_type_s => '商品推荐',
            'vip_type' => false,
            'vip_price_decrease' => $v->dprice,
            'click' => $v->xiabb_views,
            'business_address' => $v->subtitle
        );
    }
}
$data['goods'] = $goods;
$data['businesses'] = array();
$data['may_like'] = array();
echo json_encode($data);
?>

    添加文件:/shop/api/search/searchInit/index.php

<?php
/* 
 * 马甲APP商城商品获取接口
 * 
 */
header('Content-Type: text/plain');
include(__DIR__.'/../../../../sysconfig.php');
$url = $url.'api/x_xigua_sp.php';
//echo geturl($url);
$cn = json_decode(file_get_contents($url)); $hot_good = array();
if(count($cn)>0){
    foreach ($cn as $key => $v) {
        $album = $v->album;
        $album = unserialize($album);
        $fengmian = $album[0];
        $hot_good[] = array(
            'id' => '/plugin.php?id=xigua_sp&ac=view&gid='.$v->id,
            'business_id' => $v->id,
            'out_url' => '',
            'title' => $v->title,
            'price' => $v->dprice * 100,
            'price_line' => $v->disprice,
            'price_show' => '¥'.$v->dprice,
            'price_line_show' => '¥'.$v->disprice,
            'pic' => $fengmian,
            'shelves_time' => date("Y-m-d H:i:s",$v->crts),
            'ump_type' => '0',
            //ump_type_s => '商品推荐',
            'vip_type' => '1',
            'vip_price_decrease' => $v->dprice
        );
    }
}
$data['hot_good'] = $hot_good;
echo json_encode($data);
?>

    添加文件:/plugin.php

<?php
include(__DIR__.'/sysconfig.php');
$url = $url.'plugin.php?'.$_SERVER['QUERY_STRING'];
header("Location: $url");
?>

    添加配置文件:/sysconfig.php

<?php

$url = "https://www.cqhc.cn/";

/* 
 *  马甲APP接入西瓜商城:
 *  1、创建指定文件
 *  2、新建的站点网址过白(APP后台>>高级配置>>开发者配置>>域名白名单),类似 hy.app.heyou.vip
 *  3、APP后台>>高级配置>>初始化配置>>搜索配置,两个更多跳转地址填写自己的西瓜商城首页地址
 *  4、APP后台>>应用中心>>多云电商,多云商城主域名填写新建的站点域名(hy.app.heyou.vip)
 *  5、此时在APP的搜索尝试搜索西瓜商城里已经上架的商品(按标题查找),能搜索到能点进去就可以了
 *  6、商品排序按照西瓜商城的商品排序,大的靠前
 * 
 *  【多功能组件添加】添加之前需要在西瓜商城的商品里勾选【推荐】标签,没有该标签选项在西瓜商城的设置里商品标签处添加
 *    举例发现页添加
 *    APP后台>>高级配置>>界面配置>>发现页配置>>添加组件(商品推荐)>> 保存 ,然后重启APP或者刷新就能看到
 * 
 *  APP搜索最多显示两条商品信息,组件最多输出20条
 * 
 * 
 * 
 *  */
 
function geturl($url){
    $headerArray =array("Content-type:application/json;","Accept:application/json");
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch,CURLOPT_HTTPHEADER,$headerArray);
    $output = curl_exec($ch);
    curl_close($ch);
    $output = json_decode($output,true);
    return $output;
}

?>