开发使用并出售

04 3 条评论

插件写的越来越多,自己用的很少很少。。木有正正经经的自己的站。。。
下面自己的站计划中了,并且有一个插件自行开发,并且自己使用,而且同时出售的模式。
前几个插件会有:聚会插件->短信插件(需要一个好的SP)->商家->订餐->团购…..
另外最近帝国CMS7.0已经开始了,希望大家能给王猛王大人 多提一些有利于二次开发和插件开发方面的建议(个人想法)。

trylife帝国CMS插件开发笔记(1)

11 15°

先动手,别被麻烦吓到

总可能认为会有多麻烦,想的太多想到的问题可能也会很多,这样的情况不如先动手,做好哪些已经知道的,熟悉的;即使是只想好了一半,那也在动手过程中让大脑自己思考,大脑有非意识下思考的能力,这个不懂担心,习惯了这种方式非意识思会把结果给你。先迈出第一步不要停滞不前,这不是人生,错了可以回头再来。

别力求完美,有阶段有计划进行

追求完美本身是好事,不过完美是不存在的,也不可能一口吃个胖子,有阶段有计划的进行,这样可以不让思维太膨胀,BUG也不会一拥而上打击你!像凤姐这样拿美国绿卡,是有计划有预谋,我们也要有计划,有步骤;

将功能分开做

插件不是CMS,况且现在的CMS也有块状结构,可以舍弃不需要的安装。将功能分开制作,可以分开更新修正,可以分开产生更大的利益,1+1>2;

帝国CMS ping插件完成

27 11°

完成之后测试了下,因为我们都没有开放RSS,也没有在任何网页提供RSS地址,所以根据蜘蛛是不是来爬RSS判断蜘蛛是不是通过ping来的,ping插件作用就是只能引来蜘蛛,关于收录与否就不是ping插件能做到的了;

之所以ping大多用于博客,是因为博客更新不是那么频繁,不想im286这样的牛坛子N万水军蜘蛛从来不舍得离开;ping插件对于更新缓慢的站效果十分明显!

测试发现google真奶奶的喜欢RSS

测试人 测试网站 测试结果
trylife http://plugin.trylife.cn 来了google和一些不知名的蜘蛛 baidu一直没来,木有收录最新网页
sa http://www.wlshw.com 一群蜘蛛,baidu google都来了,,还收录了最新的网页

openid怎么登陆到帝国CMS

24

帝国CMS会员数据主表:

http://www.phome.net/doc/dbdoc/66/page/phome_enewsmember.html

字段名 类型 解释 附加说明
userid int(11) 用户ID
username varchar(30) 用户名
password varchar(32) 用户密码
rnd varchar(30) 随机认证码
email varchar(50) 联系邮箱
registertime datetime 注册时间
groupid smallint(6) 会员组ID
userfen int(11) 点数
userdate int(11) 有效期
money float(11,2) 金额
zgroupid smallint(6) 到期后转向会员组ID
havemsg tinyint(1) 是否有短信息 1为提示有短信息,0为不提示
checked tinyint(1) 是否审核 1为已审核,0为未审核
salt varchar(8) salt密码加密随机码

相关字段说明

涉及登陆的字段有username,password,rnd,salt,checked
username: 就是用户名不用说
rnd:是randomize的缩写,取得随机数的意思,记录中会员每登陆一次变一次,用这个随机数来判断当前登陆是否有效,用两个非IE内核浏览器登陆同一个会员,第一个登陆的被挤掉就是RND的效果。
checked:会员是否被审核
password,salt:共同用于密码会员密码验证

openid第一次连接帝国CMS 或者绑定帝国CMS账号

新浪微博,腾讯微博,QQ空间等等都会给一个openid,比如新浪微博的是weiboid,腾讯微博的是nickname,QQ空间给的是openid,无论第一次连接注册还是绑定原有帝国CMS账号都是绑定一个openid而已,所以在一般在帝国CMS主表新建一个字段用于储存openid;

以后的连接

以后的连接就简单了,获得返回的OPENID后搜索帝国CMS会员主表,如果有存在的OPENID就执行登陆,没有就执行注册或绑定,trylife用的登陆函数如下:openid已经是绑定的,所以函数更新下RND之后写COOKIE就可以;买过trylife插件的童鞋可以看下这个函数在,e\trylife/common/Dev/ecms-rd-common-functions.php

function ecms_memberlogin($userid)
{
	global $empire,$user_tablename,$public_r,$user_groupid,$user_username,$user_userid,$user_email,$user_password,$user_dopass,$user_rnd,$user_registertime,$user_register,$user_group,$user_saltnum,$user_salt,$user_seting,$forumgroupid,$registerurl,$dbtbpre,$user_regcookietime,$user_userfen,$user_checked,$level_r;
	$r=$empire->fetch1("select * from ".$user_tablename." where ".$user_userid."='$userid' limit 1");
	$rnd=make_password(12);
	$sql=$empire->query("update ".$user_tablename." set ".$user_rnd."='$rnd' where ".$user_userid."='$userid' ");
	$logincookie=0;
	$set1=esetcookie("mlusername",$r[$user_username],$logincookie);
	$set2=esetcookie("mluserid",$r[$user_userid],$logincookie);
	$set3=esetcookie("mlgroupid",$r[$user_group],$logincookie);
	$set4=esetcookie("mlrnd",$rnd,$logincookie);

	if( $set1 && $set2 && $set3 && $set4 )
	{
		$re=1;
	}
	else
	{
		$re=0;
	}

	return $re;
}

帝国CMS sitemap插件(截图)

15 23°


百度即将开发符合标准的sitemap规范,以后sitemap可以百度,GOOGLE通用了!
功能简介:
1.可自行设置地图索引模板,种地地图模板
2.可设置终极地图每页链接数
3.可设置地图目录,及其首页地图文件名
4.自定义列表,自定义页面,可加入地图
5.自定义地图内容~
等等~~