为WordPress 2.3建立Tag Cloud页面

电子商务Blog升级到WordPress 2.3用上了内置的Tag(标签)以后,侧边栏的Tag过于拥挤,影响浏览。而Tag Cloud的展示却不够理想。

从使用WordPress以来,经常会有一个疑问:要建立一个区别于原有模板的页面如何设置?因为在WordPress中,撰写页面其实和撰写文章一样,只是在WordPress提供的框架里撰写、编辑页面内容,页面的布局、样式等仍然和文章页面一样。

今天我想在导航栏上新建一个Tag的页面,里面显示电子商务博客的Tag Cloud,要达到这个效果仅仅通过WordPress自带的功能是不行的,得自定义一个模板。

步骤如下:

  • 1、在Blog的模板目录下,新建一个页面模板(此处即tag),输入以下内容:

<?php
/*
Template Name:Tag
*/
?>
自定义内容

上面那段代码的意思为这个模板的名字为Tag。“自定义内容”就是在这个tag.php中要达到的目的,即一段php代码。由于这是新建页面,如果要让建立以后的Tag页面有和其它页面一样的效果,则必须调用其它页面默认的函数。以我的Tag Cloud页面为例,此处tag.php的所有代码为:

<?php
/*
Template Name: Tag
*/
?>
<?php get_header();?>
    <div id=”main”>
        <div id=”content”>
            <div id=”post-<?php the_ID(); ?>” class=”postentity”>
                <div class=”posthead”>
                    <h3 class=”posttitle”>Tag Cloud</h3>
                </div>
                <div class=”postcontent”>
                    <?php wp_tag_cloud(‘number=1000′); ?>
                </div>
            </div>
        </div>
    <?php get_sidebar();?>
    </div>
    <?php get_footer();?>

把以上代码以UTF-8保存为tag.php然后上传至wp-content/themes/你的模板里面。

  • 2、在刚才所新建的页面模板(tag)中,调用<?php wp_tag_cloud(‘number=1000′); ?>来将站内所有tag显示出来。1000可自由替换成Blogger想要的数字,此处代表显示所有文章的tag,也可以设置成一个更大的数字。
  • 3、到Blog后台新建一个页面,在右侧页面将该页面的模板设置为你新建的页面模板,选择tag。

WordPress新建模板页面 

  • 4、在WordPress的侧边栏里,可以显示Tag Cloud,不过这样会显得很拥挤。要想让侧边栏中只显示20个tag,则修改wp-includes/widgets.php,查找wp_tag_cloud(),将其替换为wp_tag_cloud(‘number=20′)即可。这样在侧边栏里就只显示使用量最多的20个Tag了。

最后要感谢ThinkAgain的帮助:)

可能与本文相关的其它文章

类别:Blogger | 2007/10/12 13:16 |

8 条评论

  1. Heyi说:

    哈哈,看来以前的标签云集实在看来不雅观。我都是用英文标签的。

  2. oxygen说:

    毕竟是中文Blog,全部用英文标签有些不现实啊。

  3. Heyi说:

    名称是中文的,连接和目录名称是英文的。

  4. oxygen说:

    那是用的Ultimate Tag Warrior这个插件才能实现吧,我用的是WordPress 2.3自带的Tag啊。

  5. ThinkAgain说:

    和插件无关。windows服务器支持中文地址解析。linux的就不行,所以看到的中文地址,都是类似%a%b%c.

  6. 黄海均说:

    虽然Windows服务器支持中文地址解析,但是这也不能直接产生英文目录、地址吧,而是类似“tag/电子商务”这种地址的。

    如果要让“电子商务”的tag地址变成“tag/ec”,则应该在文章类别中设置电子商务的缩略名为ec才行,我的“搜索引擎优化”这个tag现在对应地址就是tag/seo。

  7. cyang说:

    非常感谢,用你的方法,我实现了MyTags页面

  8. Baider说:

    博主,为什么实现的tag是竖排着的?怎么改成横排的啊?

发表评论