0.0.1版:增加百度分享

php, C/C++, Visual C++

0.0.1版:增加百度分享

帖子xiaotong » 2015-04-01 22:27

所有的phpBB模块都需要使用一个叫UMIL的库。
UMIL的全称是Unified MOD Install Library,可以从phpBB官网下载,最新的是1.0.5。
UMIL只是一个库,还需要一个install.php来调用它,install.php通过调用UMIL来安装模块。
如果将install.php和umil目录下的所有文件上传到phpBB的根目录下,并在浏览器中访问install.php,可以看到如下界面:图片
GTalkabout 写道:Click to open by GTalkabout: 3806950f-d87b-11e4-a485-b8ee658114e8
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

讨论代码在第55行(文件install.php中)

帖子xiaotong » 2015-04-01 22:37

$versions数组中指定了这个模块的版本:
图片
今后我们会升级这个模块,后面会详细介绍。
GTalkabout 写道:Click to open by GTalkabout: 9b02e500-d87c-11e4-a678-b8ee658114e8
图片
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

讨论代码在第55行(文件install.php中)

帖子xiaotong » 2015-04-01 22:46

在install.php网页上点击Advanced链接,会列出可以安装的版本,如下:
图片
因为我们的代码里只有0.0.1版本的安装信息,所以界面中也仅有0.0.1版本可供选择。
如果今后我们的mod_progbbs有了其它版本,在界面中会列出所有可以安装的版本,可以升级或者降级。
GTalkabout 写道:Click to open by GTalkabout: e10b18f0-d87d-11e4-8352-b8ee658114e8
图片
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

讨论代码在第57行(文件install.php中)

帖子xiaotong » 2015-04-01 22:55

选中0.0.1版安装模块,并在显示所有结果中选择是,安装完后会看到:
图片
增加了一个新的配置变量:allow_baidu_share。
GTalkabout 写道:Click to open by GTalkabout: 31d31200-d87f-11e4-ac93-b8ee658114e8
图片
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

Re: 0.0.1版:增加百度分享

帖子xiaotong » 2015-04-01 23:01

用install.php仅能安装模块的数据库部分。
phpBB的模块远没有WordPress那么智能,通常,每个模块会带一个install.xml文件。它用来“指导”论坛管理员怎么修改phpBB的源代码文件,它是一个xml文件,有模块的license,author,version,history等等信息,最重要部分在action-group element中。
action-group是一组动作,理论上,这一组动作完成后模块就安装完毕了。其中:
copy element是复制动作,把里面的所有文件复制到指定位置。
open element是打开动作,打开的目的是为了编辑,所以里面有edit element。edit element里面又有find element查找到指定位置,然后action element实施动作,比如before-add/after-add,分别在指定位置之前或之后加上代码等等。
php-installer element指定模块的安装文件。您可能会问,这个install.xml不是安装文件吗?估计phpBB把它认作"xml安装文件",php-installer是指的install.php文件。
diy-instructions element顾名思义是diy指南。告诉您怎么diy这个模块。
这个install.xml实际上是给人看的,然后按照里面的action-group一步步找到文件,找到位置,编辑……
所以phpBB是极客玩具,不像WordPress或者国内的Disscuz等智能与流行。
虽然有一个AutoMOD可以自动安装模块,但是实际使用中还是有些问题,还不如手工来的快。
不过手工安装也有手工安装的好处,基本上安装完一两个模块就会写自己的模块了,所以说勤动手还是有好处的。
而且,像WordPress那么智能,导致安装/卸载模块很容易,一些模块装了后玩玩而已,很快又卸载掉了,实际上并没有发挥模块的强大功力。
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

Re: 0.0.1版:增加百度分享

帖子xiaotong » 2015-04-01 23:06

前面我们的mod_progbbs在数据库中安装了一个allow_baidu_share配置选项,顾名思义,这是打开百度分享的选项。
这个配置选项并不会自动把百度分享加到网站上,下面我们开始写install.xml来使用allow_baidu_share开启百度分享。
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

讨论代码在第57行(文件install.php中)

帖子xiaotong » 2015-04-01 23:10

allow_baidu_share是一个配置选项,它的值可以为true或者false,分别对应开启或者关闭“百度分享”,默认值为false。
首先,在phpBB管理后台需要找一个地方来设置这个配置选项。
GTalkabout 写道:Click to open by GTalkabout: 40066821-d881-11e4-841e-b8ee658114e8
图片
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

讨论代码在第38行(文件install.xml中)

帖子xiaotong » 2015-04-01 23:15

找到管理后台的“综合”面板:
图片
的“论坛功能”选项页:
图片
的“允许快速回复”选项:
图片
GTalkabout 写道:Click to open by GTalkabout: def338a1-d881-11e4-9db6-b8ee658114e8
图片
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

讨论代码在第39行(文件install.xml中)

帖子xiaotong » 2015-04-01 23:18

修改代码,修改的action是after-add,表示在找到的代码后面添加代码。
GTalkabout 写道:Click to open by GTalkabout: 5ce0ec30-d882-11e4-81fb-b8ee658114e8
图片
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

讨论代码在第40行(文件install.xml中)

帖子xiaotong » 2015-04-01 23:22

配置选项的名称和说明。
这里用到了宏。这个选项名称在后台不会显示为:ALLOW_BAIDU_SHARE,而是根据论坛语言,选择语言包的宏定义的值。
简体中文语言包里设定此值为:开启百度分享,所以在后台会显示:
图片
GTalkabout 写道:Click to open by GTalkabout: e5adfacf-d882-11e4-a9a7-b8ee658114e8
图片
头像
xiaotong
 
帖子: 42
注册: 2015-03-23 3:50

下一页

回到 xiaotong 的项目

在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客