多多客api_多多系统开放平台

所有插件的入口文件都为根目录下的“plugin.php”,由连接参数指向具体的插件,“plugin.php?mod=shijiu&act=index”,mod指的是插件标识码,act指向插件的act文件

插件页面会自动获取插件的后台的基本设置,赋值给“$plugin_config”,开发者打印查看。

在plugin.php文件中定义了“PLUGIN_TPLPATH”和“PLUGIN_TPLURL”两个常量,分别是模板的绝对路径和相对于根目录的路径,开发者可直接使用

在根目录/plugin下新建一个文件夹,名字为“shijiu”

shjiu文件集包含以下文件:admin(存放后台设置文件),mod(存放前台显示控制文件),template(存放前台模板文件),comm.php(全局调用文件),rewrite.php(伪静态文件),set.php(应用信息文件),update.php(安装升级文件)

set.php包含改插件的后台目录,数据库结构,前台行为,安装卸载sql,是否需要伪静态,是否需要全局引入文件等基本信息:

注意:'admin_auto' => array (……部分,“index”键,没有特别需求,请设置为1,提交后系统自动生成插件配置文件

return array (

'admin_nav' => array ( //后台目录

'index' => array ('title' => '基本设置'), //键名“index”表示后台插件的do行为,如果应用需要后台设置,必须有index页面

'list' => array ('title' => '商品列表'),

'addedi' => array ('title' => '添加商品'),

'caiji' => array ('title' => '商品采集','arr'=>array('no_header'=>1)), //arr指的是在连接后加任意参数

'url_1' => array ('title' => '查看教程','url' => 'http://bbs.duoduo123.com'), //如果数组中含有“url”,表示这是一个外部链接

'url_2' => array('title'=>'会员列表','mod'=>'user','act'=>'list','arr'=>array('page'=>1)), //如果函数mod和act,表示指向网站后台的的一个模块,arr根据实际情况选择

),

'admin_auto' => array ('index' => 1,'list' => 1,'addedi' => 1,'del' => 1), //后台模块数据是否用框架自动处理

'table' => array ( //数据库结构,键名“shijiu”表示应用安装时自动创建“duoduo_plugin_shijiu”的表,表结构不需要自己写明,只要在本地开发中创建表“duoduo_plugin_shijiu”,把debug模式改为1,可点击后自动生成

'shijiu' => array (

'id' => 'int(11) NOT NULL auto_increment',

'val' => 'text NOT NULL',

'type' => 'tinyint(1) NOT NULL default "0"',

'duoduo_table_index' => 'PRIMARY KEY (`id`),KEY `type` (`type`)',

),

//重复上面的数组可创建多个表

),

'act_arr' => array ( //应用前台模块,没有特别需求tag可重复应用标识码

0 => array (

'act' => 'index',

'title' => '19.9包邮',

'tag' => 'shijiu',

'nav' => 1, //添加nav字段,会自动添加前台导航

),

1 => array (

'act' => 'view',

'title' => '',

'tag' => 'shijiu',

),

),

'search' => array ( //如果不需要前台页面自动添加搜索,“search”为空

'act' => 'index',

'search_name' => '十九块九',

'search_tip' => '搜索十九块九商品',

'search_width' => '70',

),

'install_sql' => 'select * from {%BIAOTOU%}user where id=5;select * from {%BIAOTOU%}user where id=5;', //安装sql语句,假设应用需要对现有的表增加字段,便可在这里执行sql,例子中的select只是随便写的

'uninstall_sql' => 'select * from {%BIAOTOU%}user where id=5;select * from {%BIAOTOU%}user where id=5;', //卸载sql语句,与安装sql对应,添加过什么字段必须在这里有对应的删除

'need_include' => 1, //是否需要全局调用文件,文件目录在plugin/shijiu/comm.php

'debug' => 0, //调试模式,设置为1应用后台出现“生成配置文件(即set.php)”的按钮,生成后debug会自动置0,调试模式下,系统会自动判断后台代码的a和from表示是否有do和plugin_id,只是友好的提示,开发者自己确定没错可不用理会,本地开发时需要设置为1.

'banben'=>'20130911', //应用所试用的多多版本

'version'=>'0.1', //应用自身的版本号

);

?>

下面对set.php内的做具体说明:

admin_nav:表示后台目录,与admin文件夹下的文件对应,在admin_nav下定义数组都会在插件后台显示快捷导航,如果定义了“url”键名,便是一个外部连接。

admin_auto:表示后台模块是否使用多多默认框架。多多插件后台默认4个模块“index(插件基本设置,每个插件必须默认添加此文件),list(数据库数据列表),addedt(数据库数据添加修改),del(数据库数据删除)”,具体代码参照admin/plugin/admin.act.php,如果您不需要框架默认的数据处理,要自行写逻辑,请把admin_auto对应的模块数值设置为0

table:如果您的插件不需要新建表,请将table的数组内容留空。table可以添加多个表,第一个表必须以应用标识码为名,如范例中的“shijiu”,安装应用时系统会自定创建表“表头_plugin_shijiu”,如需多个表可为table增加数组,表名必须是“shijiu_名字”。文件中的表结构无需自己书写,开发者只需要本地建好数据库,后面会讲到如何自动生成。

act_arr:前台行为,安装应用时根据是否有“nav”等于1会自动添加页面管理和导航。

search:模板导航接口,会在前台搜索框自动增加一个搜索项,关键词参数是q,不需要请留空。

install_sql:应用安装sql,用分号分开,“{%BIAOTOU%}”表示表头,无需安装sql请留空。

uninstall_sql:应用卸载sql,用分号分开,“{%BIAOTOU%}”表示表头,无需卸载sql请留空,卸载sql必须与安装sql对应。

need_include:是否需要给全局添加引入文件,对应插件内的comm.php文件。需要是1,不需要是0

rewrite:是否有伪静态文件。需要是1,不需要是0

debug:调试模式,打开这个模式后,在插件后台管理首页,会多一个生成配置文件的按钮,程序会根据你填写的数据库名,自动从你的库中检索出结构,并更新set.php。本地开发时设置为1。

下面对admin文件夹做具体说明:

admin下的文件因为结构相对简单,所以不区分mod和template,控制代码和模板代码写在同一个文件中。

admin下的文件内容中的a,form等标签,连接中必须带有do和plugin_id参数,do表示代码行为,用于指向admin下的文件,plugin_id是该应用的id号。当打开debug模式,框架会自动检查a和form标签是否带有do和plugin_id参数,并提示开发者。(框架只是提醒,如果开发者处理的a和form标签确实不需要do或者plugin_id参数,那么无需理会警告)

index.php:应用基本设置,提交后会自动生成一个数据文件记录在data/json/plugin/应用标识码.php,调用函数“dd_get_cache('plugin/应用标识码')”,

list.php:将“表头_plugin_shijiu”的数据罗列。按照一定的规则筛选数据是列表页的常用需求之一(比如商品表按照分类、标题查询等):

在list.php页面的上部查询form中,框架对两个input有特殊处理,截图事例:

name为“sql_where”的input表示查询字段的规则,每个字段用大括号包含,内部规则用英文分号隔开,共分4节,下面对其中一个进行说明,“title:char:like:full”,第一节表示字段名,第二节表示字段类型(字符类型是char,数字类型是int),第三节表示sql语句中的where比较符,是liek就是like,是等于就是等于,第四节有两个状态,一个是“full”,表示当字段为空值时(字段类型是字符)或者字段为0时(字段类型是数字),此字段不参与where,一个是“empty”,表示当字段为空时,此字段依然参与where

name为“order_by”的input表示sql语句的order by属性。

注意:框架提供的方法只是提供,并不强制,开发者如果感觉使用不惯,可将list.php的admin_auto设置为0,开发者自行写php代码。

addedi.php:将“表头_plugin_shijiu”的数据添加修改

以上三个文件的数据操作是系统内置的,如果需要,请将“admin_auto”的内容分别设置为1,并且在form表单中默认submit的name为sub。

如果不需要框架自动处理数据,将“admin_auto”的内容分别设置为0。

开发者可在admin下添加任意文件,文件开头必须判断文件是否定义过“ADMIN”常量,没有定义停止页面运行。

后台框架是先输出统一的头部代行,再根据do参数引入各个文件,如果引入的文件如果只是数据计算,不需要页面显示,此时就会有点小问题,解决办法是将参数加上&no_header=1(get或者post形式都行),有这个参数后,框架变不会输出统一的头部,直接引入文件。

下面对mod文件夹做具体说明:

mod文件夹下的文件名规范为“*.act.php”,如:index.act.php,list.act.php

mod下的文件用于处理前台数据运算,开发者可自定义多个文件,每个文件开头必须判断是否定义过常量“INDEX”,没有定义停止页面运行

如果应用前台多个页面需要调用相同的函数,可在mod下新建fun.php,将代码写在里面。函数和变量以应用标识码做前缀,防止和默认程序冲突

下面对template文件夹做具体说明:

template文件夹下的文件名规范为“*.tpl.php”,如:index.tpl.php,list.tpl.php

template下的文件用于处理前台模板显示,每个文件开头必须判断是否定义过常量“INDEX”

comm.php:因为应用已经有自己的mod/fun.php,所以此文件主要用在自制模板中需要调用的全局文件。函数和变量以应用标识码做前缀,防止和默认程序冲突

自20130911版本开始,开发者无需定义应用的伪静态规则,应用伪静态统一网址为 /plugin/mod-act-**-**,系统会将**-**放入常量“PLUGIN_QUERY”中,开发者在插件中自行对此串进行解析。具体解析代码在comm/dd.config.php中。

update.php:应用安装升级文件,如果应用安装没有特别的需求,此文件留空即可。如果有特别需求,在此文件内写代码。每一个应用(不管是插件还是模板),必须带有plugin/应用标识码/update.php文件,没有特别需求就留空,但是必须要存在

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
此补丁适用于v7.4所有版本 近期开放的板块: 1、掌柜搜索跳转S8。节约API调用资源。 2、天猫活动系列的api ,有佣金还有补贴。 -------------升级注意------------- 1、备份数据库(一般duoduo_shop表比较大,可以不备份)。备份程序文件(仅备份自己修改过的即可。没修改或小修改可忽略) 注意,升级无误后删除老版本备份,然后再重新备份。 2、下载升级包后修改 update 文件夹里面的 admin 文件夹,为自己的后台目录名称。(如果后台目录没修改就不需要理会) 3、商业授权版本。(非商业用户升级数据损坏,官方不提供恢复) -------------升级方法------------- 1、上传 update 内 所有文件覆盖到网站内,覆盖。 2、修改 update 文件夹里面的 admin 文件夹,为自己的后台目录名称。(如果后台目录没修改就不需要理会) 3、输入 http://您的网址/update.php 文件 -------------升级说明------------- 一、新增 1、添加淘宝页面打折信息 二、升级 1、kindeditor编辑器升级到最新版 三、说明 打折标签不显示商品,说明没有此商品,请自行及时更改 -------------常见问题------------- 1、阿里妈妈中订单金额和获取的订单有些许不同,是因为扣税了,详细介绍: http://club.alimama.com/read.php?tid=2060087&ds=1&page=1&toread=1 2、页面能显示税后的金额吗? 答:不能,扣多少税 存在不确定性。 3、为什么我的成交价 都是 0.00元? 答:因为是升级前的订单,没有入库所以为 0 ,升级后获取的订单都会显示。 4、增加淘宝商城tmall无返利的商品补贴机制。什么意思? 答:天猫商城的商品虽然没有参与淘宝 但是有补贴 所以还是有佣金。 所以你们可以在网站上做个活动,tmall的商品无返利本站额外补贴。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值