Archive for the ‘WordPress’ Category

如何在本机搭建WordPress

WordPress是一套免费的开源项目,用户可以用它在支持php和mysql的服务器上搭建自己的blog,或者在本地搭建一套用于调试代码。这次分享包含以下几个方面:

阅读全文 »

WordPress相关日志

昨晚手欠,点了一下“升级Wordpress”,于是就开始了各种忙乱。

首先是在升级前没有停用正在使用的插件,老旧插件导致Wordpress的前台、后台全部白屏。
解决办法:ftp登陆上去,将插件文件夹 plugins 重命名。

其次就是各插件恢复使用后,Simple Tags 插件的作者没有提供更新,现有版本 2.0-beta9 不支持 WordPress3.2 ,导致“相关日志”无法正常工作。

言归正传,说一下如何直接用代码实现“相关日志”的功能。

  1. 打开当前所用的模版文件夹
  2. 找到functions.php
  3. 添加如下代码:

阅读全文 »

WordPress模板的image.php

最近一直在找“有评论功能”的相册插件,始终没有满意的结果,索性自己干了。

wordpress自2.5版本就开始自带了 wp_get_attachment_image 参数,它可以把附件当做一个页面展示出来,在页面上添加<?php comments_template(); ?>就可以实现评论功能了。评论演示

目前大多数主题都没有包含image.php,如果没有这个文件,我们可以复制一个single.php重命名为image.php来做相册的个性化调整。

首先查找 the_content 参数,在他的php标签上面,添加代码:

  1. <p class="attachment">
  2. <a href="<?php echo wp_get_attachment_url($post->ID); ?>">< ?php echo wp_get_attachment_image( $post->ID, 'medium' ); ?></a>
  3. </p>
  4. <div class="caption">
  5. < ?php if ( !empty($post->post_excerpt) ) the_excerpt(); // "caption"标签包含的是照片描述区域,如果你懒得写描述,这部分内容可以删掉 ?>
  6. </div>

如果你想要“上一张”“下一张”的翻页效果,可以在the_content的下面,添加翻页代码:

  1. <div class="further">
  2. <p class="float_left">« < ?php previous_image_link() ?></p>
  3. <p class="float_right">< ?php next_image_link() ?> »</p>   
  4. </div>
  5. ?>

然后删掉post_tags、sidebar等等不需要的内容,来拓宽图片的展示空间。
添加overflow:auto;overflow-y:hidden样式到正文区域,给大图片添加横向滚动条。
增加返回相册首页的按钮。
参考留言板的制作方法,写一个photocomment个性化评论页。
等等个性化的东西,自定义就好。

阅读全文 »

为wordpress主题添加canonical

关于 rel=”canonical” 规范的相关信息,可以参阅 Google Support
大致的意思就是,博客内 存在很多内容相同的页面。很多地址指向的其实是一种内容,这样搜索引擎就比较迷惑,哪个页面是最重要的。

通过canonical规范的生效,能有效的避免这类问题。

打开你wordpress所应用的主题内header.php文件,添加如下代码即可:

<?php if ( is_singular() ) echo '<link rel="canonical" href="' . get_permalink() . '" />'; ?>

该标签也可以直接写成:

<link rel="canonical" href="http://uicss.cn/canonical-for-wordpress/" />

需要注意两点:

  1. 允许指向不同的子域名,不允许指向其他域名
  2. canonical属性可以被传递
    即A页面声明B为权威链接,B声明C为权威网页,那么C就是A和B共同的首选权威版本

如果添加正确的话,你可以在firefox浏览器中,地址栏的右侧,看到如下的图标:


2010-09-09 纠正一下,firefox浏览器需要安装SearchStatus插件

WordPress调用PageCookery的方法

PageCookery是由explon开发的一套微博客系统,采用Php+Mysql架构而成,详细介绍及演示可参考他们的官方网站,这里言归正传,分享一下如何在wordpress中调用PageCookery的内容。

  1. <?php
  2. require_once (ABSPATH . WPINC . '/class-feed.php');
  3. $feed = new SimplePie();
  4. $feed->set_feed_url('http://uicss.cn/talk/rss.xml');
  5. $feed->set_file_class('WP_SimplePie_File');
  6. $feed->set_cache_duration(3700);
  7. $feed->init();
  8. $feed->handle_content_type();
  9. $items = $feed->get_items(0,1);
  10. foreach($items as $item) {
  11. echo $item->get_description();
  12. }
  13. ?>

如上所示,我们主要应用WordPress的fetch_feed函数来读取微博客RSS的内容,只需要将该代码插入到你的wordpress模板中即可。其中,set_cache_duration(3700); 的意思是3700秒读取一次rss,看是否有更新;get_items(0,1)的目的是控制显示多少条微博。echo后面跟的是希望显示的内容,如果希望以列表模式显示,并列出微博客发布的时间,可以将源代码对应echo的部分修改为

echo  '<li>'.$item->get_description().'<br />'.'<a href="http://uicss.cn/talk/">'.$item->get_date('Y-m-j G:i').'</a>'.'</li>';

完成如上操作后,可以调整样式表,改为自己喜欢的排版模式。
如果对所显示的内容不满意,可以到PageCookery的对应目录中修改cron/rss_update.php文件,来变更RSS显示的内容。

Page 1 of 612345...Last »
崔凯的博客
Powered by WordPress | Theme by ck web design | TOP 顶部
Copyright © 崔凯的博客 All rights reserved. 京ICP备09029324号.