一个 WordPress 安装,多个博客

这几天正好想装WPMU,看到了水煮鱼的这篇文章,看来省了装WPMU了。

你是否有多个博客,每个博客都是使用多个 WordPress 博客?那么你是否厌烦了重复多次的升级,重复多次的安装插件?如果是的,你是否尝试过一个 WordPress 安装,就能给多个博客使用呢?下面我就能讲讲我如何实现一个 WordPress 安装实现多个博客共同使用。

第一步,肯定是把所有的域名都指定到相同的 WordPress 安装目录下。这样才能使得所有博客使用同一个 WordPress 安装。

第二步要分两种情况:

第一种是使用不同的数据库。只需要在 wp-config.php 文件的开头加入以下代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
$hostname = $_SERVER['HTTP_HOST'];
 
switch ($hostname) {
case "fairyfish.com":
    $db = "db1";
    break;
case "denis.fairyfish.com":
    $db = "db2";
    break;
}
 
// ** MySQL settings ** //
define('DB_NAME', $db);    // The name of the database

代码很简单就是根据不同的域名,给DB_NAM不同的数据库名的值。这里是假定你使用相同的数据库用户名,如果你的数据库用户名,也可以在每个 case 语句中指定。

第二种情况是使用相同的数据库,这个时候我们可以使用不同 table_prefix 来搞定。方法基本和上面相同。我也不再重复代码。对于这种情况,已经有一款插件他能帮助你完成所有的了工作,WP-Hive,这款插件除了能够给你不同的博客指定一个不同的table_prefix之外,还能够通过 rewriter 实现每个博客都能有自己的 favicon,sitemap.xml 和 robots.txt。

最后让所有的博客使用相同的用户。这个功能只能适合 WordPress 2.6 之后的版本。实现方法是在wp-config.php文件中指定 CUSTOM_USER_TABLECUSTOM_USER_META_TABLE 这两个值为常量,使得所有的博客都是用同一个 USERUSERMETA 表,从而达到所有博客拥有相同的用户。

原文链接:一个 WordPress 安装,多个博客

区分开 Comments 和 Trackbacks

实现这个功能主要的工作就是编辑你主题的 comments.php,当你找到你的 comments.php 的时候,现在我们开始修改代码:首先找到一下代码:

1
<?php foreach ($comments as $comment) : ?>

直接在它的下面增加以下代码:

1
2
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type == 'comment') { ?>

以上代码其实是告诉 WordPress 去获取留言的类别,如果留言的类别是 ‘comment’,就是是人留的言,显示它。

接着,我们需要插入更多的代码,在 comments.php 一直往下找,直到你看到:

1
<?php endforeach; /* end for each comment */ ?>

就在 endforeach 代码之前添加如下代码:

1
<?php } else { $trackback = true; } ?>

最后你需要插入代码去显示 trackbacks。

1
2
3
4
5
6
7
8
9
10
11
<?php if ($trackback == true) { ?>
<h3>Trackbacks</h3>
<ul id="trackbacks">
<?php foreach ($comments as $comment) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != 'comment') { ?>
<li><?php comment_author_link() ?></li>
<?php } ?>
<?php endforeach; ?>
</ul>
<?php } ?>

这些代码是告诉 WordPress 显示留言类别不是 ‘comment’ 的留言,包括 pingbacks 和 trackbacks。你现在在你的日志页面看到效果了(如果你使用了缓存插件,你需要刷新下你的缓存)。

原文:区分开 Comments 和 Trackbacks

让发布评论可以使用ctrl+enter快捷键

提供这个方法的原创作者是JAY
找到你当前使用的主题,编辑Comments.php,搜索如下代码:

1
2
3
...
</form>
...

找到以后在这个前面加上

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript">        
        document.getElementById("comment").onkeydown = function (moz_ev)
        {
                var ev = null;
                if (window.event){
                        ev = window.event;
                }else{
                        ev = moz_ev;
                }
                if (ev != null && ev.ctrlKey && ev.keyCode == 13)
                {
                        document.getElementById("submit").click();
                }
        }
</script>

收藏自:http://www.yofox.net/2008/09/postcomment-ctrl-enter/

不用插件,简单实现留言倒序

因为大多主题的留言薄都是将最新留言放在最下面,所以很不习惯,通过小修小改即可把留言顺序按照最新留言放在上面了——即实现倒序。

修改 comments.php 里面的评论顺序

1
2
3
4
//也很简单,只需要在文件中替换一处代码:
<?php foreach ($comments as $comment) : ?>
//替换成:
<?php foreach (array_reverse($comments) as $comment) : ?> 

如果有评论编号,做如下要改

通过上面的修改你的留言顺序应该倒过来了,如果有序号的话,还须把序号倒过来才算完美。不过有不少的模板主题的编号代码都不一样,有$iCommentCount或$iCommentnumber,我们仅用$iCommentCount做例子:

1
2
3
4
5
6
7
$iCommentCount = 0;
//...
<?php $iCommentCount++; echo($iCommentCount); ?>
//需要改成初始值为评论总数,输出一次自减一次,循环:
$iCommentCount = get_comments_number();
//...
<?php echo($iCommentCount); $iCommentCount--; ?>

收藏自:http://seosem.ws/wordpress/no-plugin-guestbook-sort/

网页MSN,QQ,Skype,贸易通,雅虎通在线客服代码合集

1.如何在网页上显示腾讯QQ在线洽谈?

QQ在线咨询代码(qq在线交谈代码/qq在线客服代码/qq在线状态代码/qq在线客服代码)
(将123456换成你的号码,site后面换成你的网站就可以了)

1
<a target="blank" href="http://wpa.qq.com/msgrd?V=1&Uin=12345678&Site=精品空间论坛& Menu=yes"><img border="0" SRC=http://wpa.qq.com/pa?p=1:12345678:6 alt="点击这里给我发消息" align="absmiddle"/></a>

更多的生成显示QQ在线状态的代码,请查看腾讯官方网站
http://imis.qq.com/webpresence/code.shtml
你只需要填写你的号码,网站名称以及提示就可以点击生成就可以生成QQ在线状态的代码,拷贝生成的代码加入网页即可

2.阿里巴巴贸易通在线状态代码生成,eric改成你的ID就行了,还有ALT改成你的内容

1
<a target=_blank href="http://scs1.sh1.china.alibaba.com/msg.atc?v=1&uid=mengsajewel"><img _fcksavedurl=""http://scs1.sh1.china.alibaba.com/msg.atc?v=1&uid=mengsajewel"/><img" border=0 src="http://scs1.sh1.china.alibaba.com/online.atc?v=1&uid=eric&s=2" alt="精品空间论坛 eric" align="absmiddle"></a>

更多的阿里巴巴贸易通在线状态代码生成样式,请查看阿里巴巴官方网站
http://club.china.alibaba.com/club/block/alitalk/alitalkfire.html

继续阅读

两组PHP代码的随机图像显示程序

1:PHP随机显示图片

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
/*
*   Author:   http://www.yox.net.ru
*/


$url = "./images"; //注意:图片文件夹路径,不可含有'/';
$files = array();
if(false !== ($handle = @opendir($url)))
{
  while($file = readdir($handle))
{
if(($file !== ".")&&($file !== ".."))
{
  if((substr($file,-3) == "gif") || (substr($file,-3) == "jpg") || (substr($file,-3) == "png"))
   $files[count($files)] = $file;
}
}

closedir($handle);
$random = rand(0,(count($files)-1)); //设定随机数的范围;

//根据文件类型,设置输出的文件类型;
if(substr($files[$random],-3) == "gif")
    header("Content-type:image/gif");

elseif(substr($files[$random],-3) == "jpg")
   header("Content-type:image/jpeg");

elseif(substr($files[$random],-3) == "png")
   header("Content-type:image/png");
   readfile("$url/$files[$random]"); //读文件,显示图片;
}else
  echo "<b>图片目录<font color=red>$url</font>不存在!请重新设置!</b>";
?>

2:PHP随机图片
创建名为1到15的gif图片,随机调用显示.(注意,文件名为1.gif到15.gif之间)
可用于论坛头像,嘿嘿…

1
<?readfile(rand(1,15).".gif");?>

收藏自:http://www.yox.net.ru/random_pic_bbs/

显示同个父页面的其他子页面的链接

假设以下情况,有一个父页面,然后它有一些子页面。当你打开父页面的时候,你想在 sidebar 显示它的子页面的链接。 当你打开子页面链接的时候,你还是想要显示同样一组链接。但问题是,你现在想显示的是相同父页面的其他子页面。你不能通过一个简单函数就能解决这个问题。 下面是详细解决方法:

1
2
3
4
5
6
7
8
9
10
<?php
if($post->post_parent)
    $children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0");
else
    $children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");
if ($children) {
    echo '<ul>';
        echo $children;
    echo '</ul>';
} ?>

收藏自:我爱水煮鱼版 作者:雪山飞猪

网页上JS显示建站日期

1
2
3
4
5
6
7
8
9
<b><font color="blue">本站已运行<font color="red">
<script language=JavaScript>
var urodz= new Date("02/01/2008");
var now = new Date();
var ile = now.getTime() - urodz.getTime();
var dni = Math.floor(ile / (1000 * 60 * 60 * 24));
document.write(+dni)
</script>
</font></font></b>

急救中风患者 小常识可救命

  为了父母,你需要知道患了中风脑部的微血管,会慢慢的破裂,遇到这种情形千万别慌,患者无论在什么地方(不管是浴室、卧房或客厅),千万不可搬动他。因为如果移动,会加速微血管的破裂。

  所以要先原地把患者扶起坐稳,以防止再摔倒,这时才开始放血。家中如有专为注射用的针,当然最好。如果没有,就拿缝衣用的针,就在患者的十个手指头尖儿,没有固定穴道,大约距离手指甲一分之处刺上去,要刺出血来,万一血不出来,可用手挤,等十个手指头都流出血来(每指一滴) ,大约几分钟之后,患者就会自然清醒。

  如果嘴也歪了,就拉他的耳朵,把耳朵拉红,在两耳的耳垂部位各刺两针,也各流两滴血,几分钟以后,嘴就恢复原状了。

  等患者一切恢复正常感觉没有异状时再送医,就一定可以转危为安,否则,若急着抬上救护车送医,经一路的颠跛震动恐怕还没到医院,他脑部微血管差不多已经都破裂了。万一能够吉人天相,保全老命,容得勉强行动,那得要靠祖上积德了。

  反观一般脑中风患者,都是送医院治疗时,经过一路震荡血管急速破,以致多数患者一病不起,所以脑中风,在死因排行榜上高居第二位,其最幸运者也仅能保住老命,而落得终身残废。这是一个多么可怕的病症。如果大家都能记住这放血救命的方法,立刻施救,在短短时间它能起死回生,而且保证百分之百的正常。

  辨识中风STR三步骤

  有时候中风的症兆很难辨认,不幸的是,缺乏警觉就会带来灾难。身边的人辨认不出中风的征兆,中风患者就会造成严重的脑伤。医生说,旁边的人只要问三个简单的问题,就可以辨识中风:

  S:(Smile) 要求患者笑一下

  T:(Talk)要求患者说一句简单的句子(要有条理,有连惯性)例如:今天天气晴朗。

  R:(Raise)要求患者举起双手

  注意:另外一项中风症兆是:要求患者伸出舌头,如果舌头是弯曲的,或者舌头偏向一边,那也是中风的症兆。

  上面四个动作,患者如果有任何一个动作做不来,就要立刻拨打120!