默认情况下,WordPress 显示博客文章作为首页,但是有的时候(比如说我要架个公司展示网站),需要有一个静态的页面作为首页,这个时候,WordPress 可以很方便地设置伪静态首页。
详情看官方教程。
原创文章,如转载请注明:转载自细节之锤 [ http://blog.WaterLin.org/ ]
Copyright © WaterLin.org. All rights reserved.
我们之前已经用BuddyPress和bbPress打造了一个WordPress-MU的多博客社区系统,但是这对于一个Web 2.0概念的网站来说,仍然显得不够。我们最好能让一些最新发布的文章、最新消息显示于全站的首页,例如最新发表的文章、最新的论坛留言等。这样的功能,我们也可以轻松地通过插件来实现。
1. 安装AHP Sitewide Recent Posts for WPMU插件
AHP Sitewide Recent Posts for WPMU这个插件可以把各个博客最新发布的文章,按一定的规则提取并显示链接于WordPress MU的最前端首页里。
下载插件文件,把这个文件扔到wp-content/mu-plugins目录里,插件将自动生效。
然后到你的当前主题里你喜欢的位置加入这么一条语句:
<?php ahp_recent_posts(5, 30); ?>
这条语句的参数,表示将显示最近30天里的5篇日志,这两个参数可以任意修改、设置。
因为我用的是BuddyPress的默认模板,所以我直接把这句话扔到wp-content/themes/bphome/home.php文件里,具体是放在左侧栏(即<div id=”left-column”>标签里)。
2. 安装MuTags插件,在首页把全站的tag显示出来
为了方便用户浏览我们用WordPress MU建立的站点,我们需要在首页显示一下全站的标签(tags),方便用户根据关键字来选择主题。我们可以用MuTags插件来实现这个功能,安装方法请详细阅读插件包里面的readme.txt文件。
该插件的主要安装步骤如下:
1) 把包里的MuTags.php文件复制到wp-content/mu-plugins目录下;
2) 把包里的templates/tag_results.php复制到你的模板目录,在我这里是wp-content/themes/bphome/目录;
3) 用管理员权限登陆管理后台的”Dashboard –> Site Admin –> Mu Tags”,在这里可以配置一些基本的参数;
4) 接下来我们要让标签云(tag cloud)在首页显示出来,我们可以把下面这个语句
<?php mu_tag_cloud() ;?>
扔到你模板文件里的任何地方。在我这里,我扔到wp-content/themes/bphome/home.php文件里的右侧栏(标签<div id=”right-column”>所在部分)。当你更新了文章后,这些tag就会在首页显示出来。
通过这两个插件,首页该有的模块我们都有了,剩下的主要工作就是个性化定制页面的外观。当然,这只是一个最基本的WordPress-MU前端页面定制,更多的定制功能以后再详细介绍。
WordPress-MU支持管理后台的自动升级,但是,有的时候自动升级会失败,所以,手动升级的技能还是必须要掌握的。
官方文档对升级WordPress-MU的方法有着详细的介绍,这里以2.7.1升级到2.8.3为例,简单介绍一下WordPress-MU升级的基本步骤:
1) 第一步也是最重要的一步,升级之前先备份整站系统数据,包括数据库数据及所有的文件。
2) 保护wp-config.php以及 .htaccess文件,保护你的wp-content目录以及其它你自己建立的目录,例如bbPress目录之类的。
3) 把其它的WordPress-MU文件用新版本的文件替换掉,包括根目录下的文件以及目录wp-admin和wp-includes里的所有文件。
4) 到管理后台运行 Site Admin –> Upgrade,脚本的运行可能需要一些时间,所以,要耐心等待。
一切顺利的话,基本上就这几个步骤就够了。
参考文章链接:http://joogkevin.yo2.cn/2009/04/yo2_icon/,略有修改。
第一步 制作favicon.icon图标
我们要制作一个icon图标,不会photoshop没有关系,推荐一个在线制作icon图标的站点:http://www.html-kit.com/favicon/。大家找一张自己喜欢的图片上传上去,之后可以预览效果,满意后就可以下载。
第二步 上传图标到yo2
到你的yo2博客后台,选择插件,找到”yo2 favicon plugin for wordpress”这个插件。这个插件启用后你就会在右侧菜单”插件”栏的下方发现一个文字链接”地址栏图标”,点击进入,会出现一个上传图片的界面让你上传图片,把你做好的图标,注意是那个ico后缀的那个图标上传上去,它会提示上传成功。如果上传不满意,就什么都不选而点上传,这样会删除已上传的图标。
第三步 添加代码
回到你yo2博客后台,编辑页面文件”header.php”,将”<link rel=”shortcut icon” href=”favicon.ico” >”添加到<head>标签和</head>标签之间的任何位置,然后保存更改。OK,一切搞定。但是要注意,这样做完要过一段时间,等服务器更新后,你的地址栏个性图标才会显示,所以休息一下再看。
因为WordPress-MU的用户Email地址都是唯一的,所以,其实我们完全可以要求用户用Email来登陆,这样能更方便地进行用户管理。
要实现这个功能很简单,只要安装WP Email Login插件就可以了。对于WordPress-MU系统来说,安装到wp-content/mu-plugins/目录;对于普通的WordPress系统来说,安装到wp-content/plugins/目录。
用WordPress-MU搭建了一个多用户博客系统后,每个用户都可以有一个特殊的二级域名,例如类似于user1.domain.dtl这样的形式。可是在很多种情况下,对于一些主题比较有特色的博客,我们喜欢以一个单独的域名来进行运作。这个时候,就可以考虑在WordPress-MU里,给这些博客绑定上单独的域名。
这样做的一个好处是,你可以用一个WordPress-MU搭建多个内容发布站点,但是这些站点的系统升级、插件管理又全部可以在一个管理后台集中完成,节省大量的时间、精力,便于维护。对一般的浏览用户来讲,它们是独立的专业性网站。
我们用WordPress MU Domain Mapping这个插件,就可以实现上述的功能。
该插件的安装步骤稍微有点特殊:
1. 解压该插件包,复制里面的sunrise.php文件到/wp-content/目录,如果该目录已经有一个sunrise.php文件,安全起见,需要小心地合并一下。
2. 复制插件包里的domain_mapping.php到/wp-content/mu-plugins/目录下;
3. 编辑wp-config.php文件,放开SUNRISE所在的这一行:
define( ‘SUNRISE’, ‘on’ );
4. 用WordPress-MU的管理员帐户登陆管理后台,到Tools –> Domain Mapping里,设置相关的服务器IP地址,这个IP地址提供给用户用来绑定域名的A记录。
5. 用需要绑定新域名的用户登陆管理后台,到Tools –> Domain Mapping里,创建域名映射数据,有下面几点需要注意:
1) 你可以填入形如blog.test.com之类的域名,但是如果你用www.test.com,则会默认设置显示为test.com这样的短域名。
2) 如果你是要绑定test.com这样的域名,则你需要在域名管理面板里指定一个A记录,指向WordPress-MU所在机器的IP(即第4步里设置的IP)。
3) 如果你是要绑定一个www.test.com或是blog.test.com这样的域名,则在域名管理面板里创建一个CNAME,并让这个CNAME指向原博客地址(即user1.domain.dtl这样的地址)即可。
现在,可以用新域名来访问一下你的博客,原有的旧域名会自动转发到新绑定的域名上。
下面介绍一下在WordPress-MU里安装bbPress以及集成bbPress session的方法:
1) 安装bbPress,只需要根据bbPress的提示进行操作即可。
最好让bbPress和WordPress-MU用同一个数据库,这样,bbPress可以和WordPress-MU共享同一份用户数据,记得在安装的第二步把这个选上:Add user database integration settings。
2) 安装好了,到”bbPress的后台 –> Settings –> WordPress Integration”里,根据提示进行相关的设置。
在这里,需要填写一些有关WordPress “auth” cookie salt,WordPress “secure auth” cookie salt,还有WordPress “logged in” cookie salt的值,这些值可以在WordPress-MU的安装目录下的wp-config.php文件里找。
当然,也可以直接把下面的内容
define(‘AUTH_KEY’, ‘blahblah’);
define(‘SECURE_AUTH_KEY’, ‘blahblah’);
define(‘LOGGED_IN_KEY’, ‘blahblah’);
define(‘NONCE_KEY’, ‘blahblah’);
从wp-config.php文件复制到bb-config.php文件里,并用BB_作为前缀进行适当地替换:
define(‘BB_AUTH_KEY’, ‘blahblah’);
define(‘BB_SECURE_AUTH_KEY’, ‘blahblah’);
define(‘BB_LOGGED_IN_KEY’, ‘blahblah’);
define(‘BB_NONCE_KEY’, ‘blahblah’);
这两种方法应该是等价的。
3) 再到WordPress-MU后台里安装bbPress Integration插件,并在”管理后台 –> Settings –> bbPress Integration”里,按提示进行相关设置。
就这样,你登陆WordPress-MU的同时,也可以登陆bbPress了。
通过集成BuddyPress和bbPress,我们就让WordPress-MU具备了完备的社区功能。
WordPress-MU是一个很好的多博客用户系统,但是,如果只是单单安装一个WordPress-MU程序,单个博客看起来是孤立的,并没有建立相互之间的关联。我们可以通过bbPress与BuddyPress来建立一个基于WordPress-MU的完整社区网络。
首先安装WordPress-MU,你还需要启用WordPress-MU的插件功能。如果你在管理后台看到菜单中的Plugins后面有一个*,则表明你还没有激活plugins功能。
下面介绍一下安装BuddyPress的步骤:
1) 下载BuddyPress包;
2) 把包解压扔到WordPress-MU的这个目录下:/wp-content/plugins/buddypress/;
3) 在管理后台的Plugins里,启用BuddyPress这个插件;
4) 现在BuddyPress这个插件已经激活了, 但是我们还需要把BuddyPress的themes移动到正确的地方。把/wp-content/plugins/buddypress/bp-themes/拷贝到/wp-content/bp-themes/;
5) WordPress-MU并没有基本的多用户首页,所以,我们需要启用BuddyPress的模板,这样才能达到真正在首页显示用户关联等诸多功能:
把/wp-content/bp-themes/bphome/拷贝到/wp-content/themes/bphome/;
6) 在WordPress-MU里激活the BuddyPress home模板。
这样,就完成了基于BuddyPress的Wordpress-MU定制。
除了用Zen-cart或Magento等专业的电子商务开源代码以外,我们也可以以WordPress为核心、安装WP e-Commerce插件,实现建立一个电子商务站点的目的。
插件地址:http://wordpress.org/extend/plugins/wp-e-commerce/
插件的官方网址是:http://www.instinct.co.nz/e-commerce/
把这个插件解压放到WordPress的wp-content/plugins目录里,在WordPress管理后台把这个插件激活即可。
再装一个专门为e-commerce提供的模板(可以到这里来找一些免费的模板),例如这个WPStore的模板就很不错。
WordPress配合WP e-Commerce可以用来建立一个以发布blog为主、以电子商务为辅的综合网站。WordPress也可以很方便地与bbPress结合,提供论坛社区等功能。
有兴趣的话,可以看看用wpmu和wp-e-commerce插件做的优秀站点GetShopped.com。
WOZ模块给Zen-cart提供了集成WordPress作为其博客系统的机会,不过,如果你用的是WordPress2.7版本,集成完毕后访问首页(http://your.zen-cart.com/index.php?main_page=wordpress),可能会出现类似下面的错误:
Warning: Cannot modify header information – headers already sent by (output started at E:\xampp\htdocs\zen-cart-with-wordpress\includes\templates\template_default\common\html_header.php:22) in E:\xampp\htdocs\zen-cart-with-wordpress\wordpress2.7.1\wp-includes\pluggable.php on line 850
而WordPress2.5版本则不会有类似的问题。
要解决这个问题很容易,只要把WordPress网址转发功能给屏蔽掉就好了。在WordPress主题的functions.php文件里加上这么一行代码就好了:
remove_filter(‘template_redirect’,'redirect_canonical’);
如果你用的是WOZ,则在default主题的functions.php文件里加入这段代码即可。有关这个问题的详细解释,以及WordPress转发网址的理由,可以查看Velvet Blues的这篇文章。