web开发

基于drupal7 的开发项目代码重构的实践

有幸接触到drupal,并且参与了公司基于drupal7系统的代码重构,所以这篇文章主要讲一下我们团队在做重构的一个过程,包括重构要解决的是什么问题,重构要达到的一个什么样的具体的目标,重构过程是如何实施的。

1、重构要解决的问题

我们平台基于drupal开发的,基于这个平台下面有很多的site,可以简单地理解为,有一套核心的系统,然后基于这个系统下有很多的网站应用,每个应用都有自己的业务逻辑。随着时间推移与不同的用户需求,平均每两个月都会有一个平台的版本发布,也就是有platform_v1.0.0.0版本,platform_v1.1.0.0版本,platform_v1.2.0.0版本等等。每个平台的版本可能都会有新的功能。

现在的问题是,如果有一个site用的是1.0.0.0版本的平台,现在当前最latest的1.8.0.0,那么如果这个1.0.0.0的site只要1.8.0.0 version的其中一个功能的话,该如何实现?我们的做法是,根据每个平台version的release note,也就是每个version的每个功能的开发文档,把1.0.0.0的site升级到1.8.0.0,其中迭代了8个版本,工作量惊人,而且风险巨大。

如何设置Drual7二级导航

1. 首先去admin/structure/menu设置好要显示的菜单;

2. 去admin/appearance/settings/{当前theme名称}disabled掉main menu;

3. 去到admin/structure/block把main menu block挂到header region;

4. 然后清一下drupal cache,到目前为止二级导航菜单的结构已经有了;

5. 然后根据自己的主题页面,写一点js跟css代码就可以了,可以写在对应theme的 template.php里面


PHP设计模式之单例模式

单例模式就是确保一个类只有一个实例,并且是自行实例化。
三个要点:

web开发之即时通讯数据库设计

很多web应用带有站内信的功能,或者类似于新浪微博一样的聊天功能,这篇文章针对即时通讯的数据库设计发表一下自己的看法。

Tags:

配置虚拟主机跟主机通讯(断网情况下依旧通讯成功)

配置虚拟机跟主机在同一局域网,即使断网情况下也能通讯成功。

系统:win7

Tags:

lnmp 配置文件

状态管理LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}


Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}


PHP-FPM状态管理:/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}


PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}


MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}


Apache状态管理:/etc/init.d/httpd {start|stop|restart|graceful|graceful-stop|configtest|status}


Subscribe to RSS - web开发