WordPress 2.8留言板制作教程



    在WordPress中,留言板可以通过增加一个标题为“留言板”的页面来实现。但这样实现的留言板有发布时间且显示为评论,看起来总不是那么那么合适。究其原因,可发现WordPress页面和文章的实现几乎是一样的,因而其显示效果也就几乎相同。

    以前参考《简单5步,制作wordpress留言板》制作了留言板,但最近发现留言内容无法显示,通过测试代码知该文中提到的方法是针对较早版本的WordPress。因而修改修正一下,便有了下文。增加了留言板功能的本站点主题Inove可在《WordPress主题inove v1.4.6修改版》下载。



    一、制作留言模块

    1、添加留言模块文件

    找到你博客模板目录中的comments.php文件(一般模板目录是在/wp-content/themes/博客模板名称/);复制comments.php并重命名为guestcomments.php。

    注:用一款合适的文本编辑器进行编辑,如emeditor、editplus、ultraedit、notepad2,之所以不用windows自带的notepad是因为它对UTF-8的编码方式支持不好。

    2、修改留言的提示文本

    将其中的“评论”改为“留言”,具体修改可直接修改源文件,但考虑到多语言特性,建议通过修改语言文件来完成。如修改如下代码

    _e('Leave a comment', 'inove');

    _e('Leave a message', 'inove');

    然后在语言文件中增加

    msgid "Leave a message"
    msgstr "发表留言"

    关于语言文件的修改可参考《WordPress主题插件语言包制作工具》。

    3、最新留言显示在顶部

    默认情况下是按时间顺序来显示的,即最新留言在最底下。要使最新留言显示在最顶上,即需要按时间倒序显示留言,修改如下代码:

    // for WordPress 2.7 or higher
    if (function_exists('wp_list_comments')) {
    	wp_list_comments('type=comment&callback=custom_comments');
    // for WordPress 2.6.3 or lower
    } else {
    	foreach ($comments as $comment) {
    		if($comment->comment_type != 'pingback' && $comment->comment_type != 'trackback') {
    			custom_comments($comment, null, null);
    		}
    	}
    }

    为:

    // for WordPress 2.7 or higher
    if (function_exists('wp_list_comments')) {
    	wp_list_comments('type=comment&callback=custom_comments&reverse_top_level=DESC');
    // for WordPress 2.6.3 or lower
    } else {
    	foreach (array_reverse($comments) as $comment) {
    		if($comment->comment_type != 'pingback' && $comment->comment_type != 'trackback') {
    			custom_comments($comment, null, null);
    		}
    	}
    }

    注:wp_list_comments函数参考WordPress Codex说明

    二、制作留言板页面模板

    1、添加模板页面文件

    找到你博客模板目录中的用来显示单篇主题的页面模板文件single.php文件;复制 single.php并重命名为guestbook.php,这样做的目的是我们希望留言板能保持博客的基本布局如:页面头部,页脚和侧边栏。

    2、打开guestbook.php

    在文件最顶上插入一段仅带注释语句的模板标识,这里我们将页面模板名字(Template Name)定义为Guestbook,这个名字在下面会有用到。

    <?php
    /*
    Template Name: Guestbook
    */
    ?>

    3、引入留言模块

    在留言页面中引入前面修改过的留言模块。找到如下代码:

    <?php include('templates/comments.php'); ?>

    替换为如下代码:

    <?php
    	if (function_exists('wp_list_comments')) {
    		comments_template('/guestcomments.php', true);
    	} else {
    		comments_template();
    	}
    ?>

    4、修改页面细节

    如inove主题下面包屑导航中页面被放入未分类下,显得不太合适。遂将以下代码:

    <div id="postpath">
    	<a title="<?php _e('Go to homepage', 'inove'); ?>" href="<?php echo get_settings('home'); ?>/"><?php _e('Home', 'inove'); ?></a>
    	 &gt; <?php the_category(', '); ?>
    	 &gt; <?php the_title(); ?>
    </div>

    改为:

    <div id="postpath">
    	<a title="<?php _e('Go to homepage', 'inove'); ?>" href="<?php echo get_settings('home'); ?>/"><?php _e('Home', 'inove'); ?></a>
    	 &gt; <?php the_title(); ?>
    </div>

    另外删除相关文章、下一篇文章导航等代码。具体修改视具体主题而定。

    三、添加留言板页面

    1、以具有admin权限的帐号登录wp管理界面。

    2、新建一个页面,在主题名称处输入“留言板”,在内容处入些内容,如“欢迎留言! :-)”等等。在右侧页面模板(page template)处,选择刚才创建的guestbook页面模板,发布(publish),完成。

    四、完成效果

    WordPress留言板最终效果

    WordPress留言板最终效果

    五、说明

    制作的留言板模板还可方便地运用于其他页面,只需要在编辑页面界面选择模板为留言板模板即可,使用方便,且可保持页面风格的统一。另外,通过模板的修改我们能加上其他的代码,做出我们想要的显示效果。



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《WordPress 2.8留言板制作教程
    标签:
    分享:

已经有34 条评论抢在你前面了~

  1. 沙发
    傲弑月读 2013年9月23日 上午1:50

    我的wp主题是zbench 在该主题下啥都没找到 请求博主指点迷津 ORz

    [回复]

    晴枫

    晴枫 回复:

    @傲弑月读, 请找到类似的代码位置对应进行修改

    [回复]

  2. 板凳
    mousushi 2012年5月4日 上午6:02

    来学习,谢谢

    [回复]

  3. 地板
    kjmgc 2010年6月3日 上午8:23

    博主,你好,看到你这篇文章,下载了你修改后的主题,传上去,有个问题就是,那个评论的地方多了个设计个性头像的连接提示,怎么只能才登陆后才能看到,能修改成不用登陆就可以看到吗?

    [回复]

    晴枫

    晴枫 回复:

    @kjmgc, 你是说 Gravatar吗?看一下这篇《Wordpress 评论头像设置方法》http://witmax.cn/wordpress-gravatar.html

    [回复]

  4. 4楼
    fufu 2010年3月20日 下午11:52

    呵呵 学习了 呵呵

    [回复]

  5. 5楼
    nx 2010年2月10日 下午9:36

    谢谢了,有点复杂

    [回复]

  6. 6楼
    彩票论坛 2010年2月4日 上午11:18

    很好,谢谢了

    [回复]

  7. 7楼
    2010年1月27日 下午9:19

    博主大大http://www.fxzhe.com/这个也是跟我们一样的主题。。。可是他的导航页面怎么实现的。。。

    [回复]

    晴枫

    晴枫 回复:

    @光, 你是说它页面顶上的站点导航吗?那个自己修改一下模板

    [回复]

  8. 8楼
    2010年1月26日 下午7:27

    好像你的博客也修改文章成显示全部日志的了,可是我又想到一个问题。拿你的博客来说,日志是越来越多,可是如果点击“文章”如果显示几百篇日志的话,那太恐怖了,有没有可以分页的方法。

    [回复]

    晴枫

    晴枫 回复:

    @光, 单用wp_get_archives没办法,需要用别的方法来解决
    推荐WP-EasyArchives插件http://wordpress.org/extend/plugins/wp-easyarchives/
    我已经装上了,你可以看下效果

    [回复]

  9. 9楼
    2010年1月25日 下午11:33

    谢谢,博主大大,已经解决了。。。。

    [回复]

  10. 10楼
    2010年1月24日 下午4:41

    还有一个问题:你的博客上面(文章、下载、关于、。。。)
    新建页面选择archives,然后发布。点击文章后,显现的是存档。
    问:我想弄成显现的是全部日志,而不是存档,该怎么样实现。因为旁边页面模板(page template)处没有模板可以选择。。。需要如何修改

    [回复]

    晴枫

    晴枫 回复:

    @光, 打开模板文件夹下的archives.php 将wp_get_archives(‘type=monthly&show_post_count=1’);修改为 wp_get_archives(‘type=postbypost&show_post_count=1’);

    [回复]

    回复:

    @晴枫,
    Parse error: syntax error, unexpected ‘=’ in /home/vhosts/www.xyan.tk/wp-content/themes/inove/archives.php on line 28
    修改后竟然成了这样。。。高手支招啊。

    [回复]

    晴枫

    晴枫 回复:

    @光, 因为显示原因,代码中的半角单引号变成了全角单引号,注意改下,看看这个原因导致的;如仍有问题可能你要检查一下代码了

    [回复]

  11. 11楼
    简单描述 2010年1月23日 上午1:27

    建议:请直接把弄好的留言文件加进你修改过的主题去。这样也方便了我们这类不懂编码的人使用。谢谢

    [回复]

    晴枫

    晴枫 回复:

    @简单描述, 留言文件已经包括在修改过的主题里面,需要在后台管理添加一个留言页面才会生效,操作方法见上文中的 三、添加留言板页面 部分

    [回复]

  12. 12楼
    简单描述 2010年1月23日 上午1:24

    无语 :你好!留言板现有的模板还有么?实在是不明白?可否传一份到我的邮箱呢?谢谢了!【我的博客主题跟你是差不多的】
    [回复]

    晴枫 2009年10月1日 14:28 回复:
    @无语,我改过的模板在http://witmax.cn/wordpress-theme-inove-modified.html里提供了下载
    [回复]

    博主大大,您好,我也不会弄,你直接把那模块文件发给我好么,谢谢。
    因为我想弄个BLOG,但是我对网页编辑不懂。所有麻烦你了

    [回复]

  13. 13楼
    无语 2009年10月1日 上午7:42

    你好!留言板现有的模板还有么?实在是不明白?可否传一份到我的邮箱呢?谢谢了!【我的博客主题跟你是差不多的】

    [回复]

    晴枫

    晴枫 回复:

    @无语,
    我改过的模板在http://witmax.cn/wordpress-theme-inove-modified.html里提供了下载

    [回复]

  14. 晴枫
    14楼
    晴枫 2009年9月30日 下午3:48

    @老石
    留言页面的样式和主题风格有关,为了和主题搭,最好还是自己来改一下。我修改过的主题发给你了

    [回复]

  15. 15楼
    老石 2009年9月29日 下午5:58

    请问,留言板现有的模板还有么?实在不想自己动手做?可否传一份到我的邮箱呢?谢谢了!

    [回复]

  16. 16楼
    老石 2009年9月29日 下午5:18

    非常好!正想找这样一个内容呢!

    [回复]

  17. 晴枫
    17楼
    晴枫 2009年9月20日 上午12:58

    @孤毒老鼠
    在帮你换链之前写的

    [回复]

  18. 18楼
    孤毒老鼠 2009年9月20日 上午12:40

    囧死~~没看到你这篇文章

    [回复]

无觅相关文章插件,快速提升流量