本人从2010年开始使用Drupal,比此前使用的MediaWiki更符合通用的建站要求,Drupal对多语言、多站点的支持也是我选择它的重要因素。从最开始的6.x到7.x再到8.x,我一直都在使用,在这过程中需要修改模板、自建模块,也学会了PHP以及其它一些技术。在本博客中我也记录了很多日常使用Drupal中遇到的问题、解决的办法,希望对其他使用Drupal的朋友有所帮助。

这是 Drupal 分类的页面,点击下面标题查看详细文章内容:
本人从2010年开始使用Drupal,比此前使用的MediaWiki更符合通用的建站要求,Drupal对多语言、多站点的支持也是我选择它的重要因素。从最开始的6.x到7.x再到8.x,我一直都在使用,在这过程中需要修改模板、自建模块,也学会了PHP以及其它一些技术。在本博客中我也记录了很多日常使用Drupal中遇到的问题、解决的办法,希望对其他使用Drupal的朋友有所帮助。


前面写了两篇SSL认证方面的博文:《申请免费的SSL证书,开通https网站》、《https多网站1个IP多个SSL证书的Apache设置办法》,看上去也不是那么复杂,但实际在做http到https站点迁移的过程中还是有一些细节需要注意,这里把Dru
以前在Wiki网站中文章或者讨论的匿名发布者都是显示出IP地址来(例如这个“周公解夢”页面下方的用户留言),这样方便管理员或者其他用户了解内容发布者的来源,也便于监控防范垃圾内容。而Drupal网站中留言的匿名发布者都是显示“匿名”或者用户自己留下的名称和链接。
今天尝试了一下Drupal中修改模板文件comment.tpl.php,是可以实现显示留言者IP相关信息的,可以让注册用户和匿名用户的IP地址都显示出来,具体代码如下:
<?php /** * @file
虽然Drupal 8出来大半年了,但我们依然以Drupal 7为主,先前用的7.43已经好几个月了,现在出了安全更新Drupal 7.52,就照例进行了更新,有几点稍微不同的地方记录一下:
部分网站升级后用户浏览没有问题,但管理员界面发现大量的报错:
The following module has moved within the file system: <em class="placeholder">views_bulk_operations</em>
以前Drupal网站中遇到需要对Views的输出进行一些变换的时候,一般是通过安装Views PHP这个模块,在Views中添加Global PHP字段,在其中设置读取什么值、进行什么变换、输出什么内容,这个方式很早就开始用了,Drupal 6和Drupal 7都用过。但缺点是设置麻烦,还可能会引起负载的升高。
最近在调试一个新的网站中就遇到数据量大的时候,服务器报500错误,甚至导致阿里云服务器死机的情况。检查后发现都是与Views相关,先安装了Views PagerLite来减少MySQL的Count指令,但依然有不少内存不足的报错。
使用Drupal很多年了,在站内搜索上基本上都是采用了系统自带的搜索功能,搜索框基本没变,只是搜索结果页通过search-results.tpl.php和search-result.tpl.php进行过一些小的修改。但遇到了数据量巨大、汉字编码等问题的时候,也在某些情况下采用过其它方式:
我们这边从一开始使用Drupal就是利用的其本身的数据库结构,page, node, taxonomy, term等等都是使用Drupal本身的概念,很少直接操作数据,需要大量已有数据(一般是csv格式文件)导入网站的时候,就用第三方模块node_import (Drupal 6)或者feeds (Drupal 7)来设置和进行导入,形成页面以及分类,再辅助设置Views进行需要的列表。
以上的办法相对来说简单易行,特别是在使用Drupal初期,我们对PHP程序和MySQL数据库不很熟悉的情况下。但在一些需要实现复杂一些功能的时候,这样的办法就有局限
2011年初刚用Drupal不久的时候写了一篇博客《被迫自学PHP来构建Drupal网站》,这几年来一直用Drupal搭建和运营网站,PHP的基础用法算是比较熟悉了(高级用法没有接触)。2016年5月开始摸索《以Drupal网站为基础创建App》,接触到JavaScript、PhoneGap等,而且DrupalGap这个中间桥梁模块及开发工具的使用中,也必须对JavaScript了解以便读懂开源JS程序以及进行必要的修改。
网上搜了一下教材,又购买了《JavaScript入门经典》、《构建跨平台APP HTML 5+PhoneGap移动应用实战》等基本书。Ja
最近需要编写一段程序来读取Drupal网站中页面Node的某个文本字段,进行处理、判断、匹配后,将这个页面归类Taxonomy到某个术语表Vocabulary的术语Term中。在刚开始用Drupal 6的时候就曾经编写过类似程序来分类,见博文《Drupal中让Node归类的PHP程序》,在后来使用Drupal 7的过程中,绝大多数分类都是在创建网站、导入数据的时候就自动进行了,使用了术语来源Term reference字段和自动完成术语挂件(标签)Autocomplete term widget (tagging)控件,但也有把数据作为文本导入字段,然后再运行php程序进行分类的情况
2010年刚开始用Drupal还是Drupal 6,移动大潮未到来,后来随着智能手机的普及,我们在Drupal 6、Drupal 7上都设置了对应的手机版网站,现在又都合并到响应式设计网站中。但以Drupal网站为基础开发App我们还没有做过,只是以前听说是可行的,在前年北京亚艾元公司在武汉大学图书馆的培训时,他们也讲过一点点cordova,但实践的时间很短,只留下一点印象。虽然现在再开发App看上去已经晚了,难以让用户接受在手机上安装更多App,但我还是想尝试一下。今年初用Drupal与微信结合的模块做了一点微信公众号的开发可以有基本的效果,现在再来做App端的结合,下面把尝试的步
2010年前我们主要使用MediaWiki平台来建网站,2011年后改用更为通用的Drupal内容管理系统,新网站就用Drupal搭建,而老的Wiki网站就维持运行、管理留言等,两个系统中可能有一部分相同的内容,都是独立导入添加的。现在想把一个MediaWiki中用户创建的页面内容迁移到Drupal网站中,思路是从MediaWiki导出XML文件,变换为CSV格式,然后导入Drupal站,具体记录如下:
2002-2023 v11.7 a-j-e-0