你在这里


Drupal 7

Drupal 7中让页面归类的PHP程序

James Qi 2016年6月14日 - 09:38 发布

  最近需要编写一段程序来读取Drupal网站中页面Node的某个文本字段,进行处理、判断、匹配后,将这个页面归类Taxonomy到某个术语表Vocabulary的术语Term中。在刚开始用Drupal 6的时候就曾经编写过类似程序来分类,见博文《Drupal中让Node归类的PHP程序》,在后来使用Drupal 7的过程中,绝大多数分类都是在创建网站、导入数据的时候就自动进行了,使用了术语来源Term reference字段和自动完成术语挂件(标签)Autocomplete term widget (tagging)控件,但也有把数据作为文本导入字段,然后再运行php程序进行分类的情况,不过Drupal 7中的程序与Drupal 6的有些不同,当时没有记录博客,后来再找以前的程序很费劲,现在补记一下,示范程序如下:

自由标签:

自己编程进行Drupal 6网站升级数据迁移到Drupal 7

James Qi 2015年12月24日 - 15:32 发布

  整个2015年从开始到结尾都在进行网站向云服务器的搬迁以及网站的升级,其中大数据量的数据迁移是个令人很头痛的问题,几百万的数据量加上几十个字段,系列网站还有几十个这样的网站,需要等待数据迁移程序运行的时间真是太长太长了。上半年就遇到大数据量的问题,后来通过修改服务器配置,让PHP使用更多的内存、最大执行时间、数据库连接缓存等办法,还是用drush content-migrate-fields这样的命令来进行,算是解决了部分难以迁移的站点。但现在到年尾,而且随着Drupal 8的退出,Drupal 6很快就面临失去支持的境况,我们需要把所有Drupal 6网站都升级,现在把所有服务器资源都利用起来,还专门购买16核64G内存的云服务器临时实例来加快迁移程序的运行,但按目前的做法算下来,依然是不知道还需要几个月才能完成。sad

大数据量Drupal 6网站升级到Drupal 7的数据迁移问题

James Qi 2015年12月14日 - 11:37 发布

  2010年底、2011年初开始尝试Drupal,当时Drupal 7还没有正式版,就用的Drupal 6,到2012年初尝试把网站升级到Drupal 7,升级过程见《本网站从Drupal_6.20升级到6.24,再升级到7.12》,但后来在升级大数据量网站的时候遇到问题,当时也记录了博文《大数据量Drupal_6网站升级到Drupal_7很麻烦》。

用Drush批量升级Drupal 6到Drupal 7

James Qi 2015年7月21日 - 17:00 发布

  我们是2010年底开始使用Drupal的,当时Drupal 7还没正式版,所以就用了Drupal 6,在2012年2月的时候就以本博客为例做过Drupal 6到Drupal 7的升级,虽然有些麻烦但好歹算是可以升级成功,而涉及到大数据量Drupal的站点升级却让我吃到苦头,后来新站都用Drupal 7搭建,而Drupal 6的一些网站也就继续停留在Drupal 6,只进行小版本升级,不敢轻易进行大版本的升级。

升级《Google AdSense实战宝典》

James Qi 2015年6月2日 - 17:47 发布

  《Google AdSense实战宝典》这本书2009年撰写,先是推出了MediaWiki版本的配套网站,到2010年出版后,又改版推出了Drupal版本的网站,不过随着Google退出中国大陆市场,AdWords的广告主投放减少,AdSense的热度也逐步下降,国内网站联盟广告渐渐被百度联盟占领,我那本书第二次印刷后,销量也定格在6000册没有再印或者再版。

  配套网站本来想做出一些与书不一样的内容,例如推出了论坛、多语言AdSense关键词查询工具、热门高价关键词列表等,不过后来国内连google.com的二级域名都封锁掉了,查看AdSense后台都需要翻墙,所以大量站长都不再做AdSense了,配套网站的流量也很少,搞得我也懒得维护、更新了。

2013年底再次升级Drupal 6和Drupal 7

James Qi 2013年12月12日 - 14:49 发布

  最近总看到Drupal系统有安全升级的提示,忙于别的事情拖了一阵子,现在准备来进行,上次大规模升级还是在2013年3月,再之前就是2012年2月尝试升级,以及2011年初开始使用Drupal。

  首先把我的个人网站升级,这个网站所在的服务器重装过,目前PHP用的5.2.x版本,不支持Drush,所以先只好用手工升级,步骤如下:

Drupal多语言网站Site Name的批量设置

James Qi 2013年1月4日 - 18:10 发布

  去年在用Drupal 7搭建PostCodeBase系列各国邮编多语言网站的时候,遇到上百个国家子网站每个都需要设置50种语言网站名称的问题,开始还逐个设置,后来实在受不了,改用Drush命令来设置:

 

drush --root=/usr/local/apache2/htdocs/drupal7.postcodebase.com --uri=http://bra.postcodebase.com variable-realm-set language af site_name "Brasilië Poskode"

drush --root=/usr/local/apache2/htdocs/drupal7.postcodebase.com --uri=http://bra.postcodebase.com variable-realm-set language sq site_name "Brazil Kodin Postar"

将Drupal 7默认的MySQL引擎从InnoDB改为MyISAM

James Qi 2012年3月22日 - 13:24 发布

  前段时间安装Drupal 7的时候就遇到自动在MySQL中使用InnoDB的情况,而且好像是即使MySQL默认引擎为MyISAM也依旧使用InnoDB。虽然InnoDB有自己的特点,Drupal 7选用这个也正常,但对于我们来说,有多个子网站的时候,以前是将数据库分散到多块硬盘上的,就需要用MyISAM来让每个子网站有独立的目录比较方便,所以还是需要能使用MyISAM。

  按照网上找到的一篇文章,修改includes/database/mysql/shema.inc这个文件可以解决,虽然修改drupal core文件不是一个很好的办法,先这样用。

83行:

'mysql_engine' => 'InnoDB',

改为:

'mysql_engine' => 'MyISAM',

订阅 RSS - Drupal 7