Drupal 7下多站点共享同一个数据库的配置方法

By admin | Thu, 01/16/2014 - 13:53

Drupal本身对多站点有良好的支持,详细规则可以查看drupal的settings.php获得详细的帮助.
这篇文章要介绍的,是多站点如何共享数据表.考虑以下应用场景:

有个网站是example.com,同时这个站点要启用一个二级域名blog.example.com.
 Blog与主站点用户数据共享,这种情况下如何配置?

通过一番调研与实验,在drupal官网上找到解决方案.链接如下. 英文不太好的同学,参考这里的步骤就行了.https://drupal.org/node/2622https://drupal.org/node/22267http://www.im87.net/topics/batch-change-mysql-table-prefix/准备:

theme_links example

By admin | Sun, 12/01/2013 - 12:19

theme links使用实例:

$links =  array(
  'item1' => array( 'title' => '1st Item', 'href' => 'path/one' , 'attributes' => array()),
  'item2' => array( 'title' => '2nd Item', 'href' => 'path/two' , 'attributes' => array()),
);
$vars = array(
  'links' => $links, 
  'attributes' => array('class' => 'outclass')
);
print theme('links', $vars);

 执行以上,将会输出如下结果:

关于drupal hook(钩子机制) 和 performance(性能)的讨论

By admin | Mon, 03/11/2013 - 09:27

http://groups.drupal.org/node/285633
drupal groups上的一个问题,必须要回答。同时这也是曾经困扰我的问题。花了一个多小时做整理和解析。同时也在自己的博客记录下,以备更多人能够少被这个问题困扰。
原文链接:
http://groups.drupal.org/node/285633#comment-898648

这是一个老生常谈的问题。

hook机制是drupal最具吸引力的特性。 Hook机制赋予drupal强大的灵活性和扩展性。
如果要使用drupal做开发,hook是必须要跨过去的一道坎。

git 技巧之 修改上次提交信息

By admin | Sun, 02/17/2013 - 03:38

如何修改上次提交的信息?比如comment,author等信息。

使用 git commit --amend --author=zterry <布兰卡>
即可修改上次提交中的author信息。

当然这只适用于commits未被推push的情景。如果commits已经被push,那么这种方法也无能为力了。

年底了,drupal views整理资料吐血大放送

By admin | Thu, 02/07/2013 - 13:48

作为一个drupal业内人士,views模块一直是我的最爱。由此,views模块作者成了我的偶像了。

最近项目中,需要对views进行扩展,静下心来整理了些思路,形成了以下资料。

资料来源于drupal.org.当然是经过自己的整理的。

介绍一个神奇的drupal模块 conditional styles

By admin | Sun, 12/23/2012 - 13:06

介绍一个神奇的drupal模块 conditional styles
这个模块,要和zen主题配合使用。使用如下的方法:
conditional-stylesheets[if IE 7][all][] = ie7specific.css
在zen子主题的info文件写上去。意思就是如果浏览器就加在ie7specific.css这个css文件,而对于其他浏览器,则不加载此css文件。这样你就可以在这个文件写你针对ie7的优化代码了。
以上是神奇之一。

神奇之二:
看此模块的源码(7.2x版本),只有两个函数
conditional_styles_preprocess_html();
conditional_styles_preprocess_maintenance_page();

使用此模块只需在自己主题的info(drupal 7)文件加入如下语句即可:

破解drupal 的theme_pager之谜

By admin | Tue, 12/04/2012 - 03:34

drupal 的theme_pager,可以提供快速的pager list输出,只要给定几个参数就可以了,这就极大的方便了我们。
一般来说,系统提供默认的pager list,但是我们可以在自己的程序中调用theme_pager,从而控制显示。下面给出代码片段,分为drupal 6版本和drupal 7版本,两者有些不同。

drupal 6版 theme_pager示例:
[php]
global $pager_page_array, $pager_total;
$pager_total[0] = 98;
$page = isset($_GET['page']) && is_numeric($_GET['page']) ? max(0, min($_GET['page'], 98)) : 0;
$pager_page_array[0] = $page;
$pager = theme('pager');
[/php]

virtualbox 下安装 Ubuntu server的一些经验

By admin | Fri, 11/23/2012 - 16:27

1: virtualbox 的网络里设置问NAT模式
2: 运行 service networking start
启用网络连接
3: 无法通过apt-get install 新软件?
首先运行apt-get update,然后apt-get install sofeware即可

安装php GD库
apt-get install php5-gd

原来 php $GLOBALS是这样玩的

By admin | Thu, 11/08/2012 - 16:53
$GLOBALS['xx'] = 'zzz';
function tt(){
  global $xx;
  dsm($xx);// dsm是drupal devel 模块提供的函数,你可以当他是print或者print_r。
}
tt();

自从接触drupal,php基本就废掉了。今天无聊,折腾php全局变量,原来如此。