wordpress:处理www和non-www之间的跳转

这个问题其实在wordpress里似乎不存在,在后台将“站点地址(URL)”设置为

http://www.yourwordpressite.com

访客通过

http://yourwordpressite.com

也能访问,原因在于wordpress进行了301跳转。实现代码可参考

/wp-includes/ -> canonical.php -> redirect_canonical()

既然已经内设了这个功能,为什么还要讨论www和non-www之间的跳转问题呢?
问题源于今天查看阿里云监控时,提示www和non-www之间存在的时间差。我在想,这个时间差也许就是wordpress内设功能所耗费的吧?!

参考了一些资料包括别人的讨论,再根据自己的实际情况(nginx服务器),对站点配置文件进行调整,具体如下:
继续阅读wordpress:处理www和non-www之间的跳转

[原创]wordpress:添加引导页

经常在制企业主题时,客户会提出访客访问时,能有一个引导页,用以展示企业形象或者引导客户选择语种等。
针对该需求,我是这样来处理的:
依照wordpress的模板机制,如果存在home.php,则home.php最先被引入。
只要在home.php里增加判断,即可以实现引导页的功能。
比如我单独建立引导页为welcome.php,首页为index.php
然后利用cookie是否为空或传入参数来引入引导页。

home.php的完整示例代码:

    global $welcome;
    $welcome = !( isset($_COOKIE['welcome']) ) )? true : false;
    if ( $welcome ) {
        setcookie('welcome', 'welcome', time()+3600, COOKIEPATH, COOKIE_DOMAIN);
        require_once 'welcome.php';
    }else{
        include_once 'index.php';
    }

上面的代码表示,访客访问时,如果没有cookie记录,则显示引导页,否则显示首页!
1小时内访客重复访问时,不再显示引导页,减少影响。

如果您想访客每次访问首页时,都先显示引导页,则需调整上面的代码,改成通过引入参数来判断什么时候引入index.php!

[原创]wordpress:屏蔽近期评论小工具中博主自己的留言

屏蔽近期评论小工具中博主自己的留言?具体需求是这样的:

我在首页将小工具用户评论搞了出来,但我每次跟的评论都显示在上面,全部把别人的评论覆盖了,请问如何将自己的评论给屏蔽掉呢?
来源:http://www.wpcourse.com/bbs/read-htm-tid-5235-ds-1-page-1.html

针对该问题,可针对widget_comments_args和comments_clauses两个hooks进行定制化处理;分别位于:
widget_comments_args – wp-includes/default-widgets.php中 WP_Widget_Recent_Comments 部分
comments_clauses – wp-includes/comment.php中WP_Comment_Query::query部分

详细实现代码如下:
继续阅读[原创]wordpress:屏蔽近期评论小工具中博主自己的留言