正在加载

标签:WordPress

解决WordPress 3.0中最新评论失效的问题

    在后台自动把WordPress升级到了3.0,发现博客右侧的"最新评论"失效,一番查找原因,最后解决,大概过程记录如下:

    1.经过查看,发现首页最新评论部分调用的为get_recent_comments函数。

    2.经过查找,发现此函数来源于盆地使用的模板中的functions.php中

    3.经过打印调试日志,发现其中的全局变量$tableposts和$tablecomments失效,从而导致获取最新评论的sql语句失效。

    4.经过查找,发下在WordPress3.0中,上述全局变量已经不再存在,包括上述两个变量在内的有变化的全局变量变化如下:

Read the rest of this page »

我的WordPress迁移步骤

    由于博客空间到期,虽然目前的空间一直以来尚且满意,不过续费的优惠并不理想,且还有其他一些选择,所以最终选择了另外一家主机服务提供商。

   大概的流程如下:

    1.购买空间 
    2.联系客服开通SSH,修改cPanel用户名
    3.生成SSH密钥,设定授权,下载公钥,登录
    4.下载WordPress
    5.设定数据库,创建数据库,创建用户,将用户加到数据库的访问权限中
    6.配置wordpress,安装wordpress
    7.导入wordpress备份数据库,注意在终端直接导入可能会因为utf8编码的问题变为乱码,盆地采用在cPanel中导入的方式。
    8.传输themes和plugins目录
    9.修改数据库中配置的表,以便于可以查看文件
       xxx_optins表,主要为如下三个字段:
           siteurl
           home
           upload_path
    10.更改域名的A记录,指向共享IP地址,或修改DNS服务器地址
    11.在cPanel中增加附加域,指向存放的目录
    12.修改wp-config.php,配置好相应参数
    13.改回数据库配置表,等待A记录生效

 

    注:两个空间之间复制文件,可以在ssh终端中直接用wget –r -m -nH 命令来传输,这样不经过本地中转可以省却一些时间,其中的-m代表镜像的意思,不采用此参数递归的层级有限,可能会漏掉较深的目录,-nH代表不生成相应主机的目录。

    其中6-8可以调整为如下步骤,即不需要下载wordpress,而是将原有wordpress相关目录迁移到新空间中去:

Read the rest of this page »

WordPress中PageNavi插件页面链接错误的简单分析

    由于原有的共享主机已经快要到期,在综合权衡了一下,盆地购买了另外一家的虚拟主机服务,这样就碰到了需要迁移博客的问题,先拿之前做的一个小站试验,具体迁移过程随后再详述,本文主要谈到遇到的另外一个问题。

    在顺利完成迁移后,其他都没有问题,但盆地发现所用的PageNavi扩展的分页链接中,所有的页面链接都有问题。

    比如假设博客地址为http://www.penddy.com,但指向的链接地址变成了http://www.penddy.com/http://www.penddy.com/index.php/page/2 ,这样所有的页面跳转链接是有错误的。

    由于google无果,只好凭着盆地对php的一知半解和之前调试代码的经验,查找问题过程如下:

    1.先查看"wp-content/plugins/wp-pagenavi"下的wp-pagenavi.php文件,在其中的wp_pagenavi函数中,可以看到其调用了_wp_pagenavi_single函数,在同一个文件中查看_wp_pagenavi_single函数,发现其调用了get_pagenum_link函数。

    2.get_pagenum_link函数位于wp-includes下的link-template.php文件中,经过多次打印调试信息,发现如下一句代码返回的结果不一致:

    $request = remove_query_arg( ‘paged’ );

Read the rest of this page »

Cannot modify header information – headers already sent by错误的解决办法

    原来博客右侧的“最新评论”的最新评论栏目,链接的"title"属性总显示为乱码,即鼠标悬停上去时显示为乱码。

    平时太懒没有处理,今天抽了点时间处理了一下,主要是修改了functions.php,修改方法是将编码格式从ansi另存为utf-8,从而使之可以正确处理中文。

    修改后重新上传此文件,显示正常。

    晚上打开Windows Live Writter想要修改一篇文章,发现无法打开文章,同时博客后台无法登录,显示错误为"Cannot modify header information – headers already sent by……",错误指向functions.

    Google了一下,发现我的问题应该属于编码格式问题。utf-8有带BOM的和不带BOM的两种格式,如果采用带BOM的UTF-8则会出现此类问题。

    因此重新用Ultraedit另存为无BOM的UTF-8格式,重新上传,问题解决。

    记忆中以前也多次碰到此问题,可惜总是没有记下来解决方法,这次做以记录以备忘。

    (完)

盆地观察博客折腾记:(三)将Twitter更新加入侧栏的官方方案

一、前言

    其实盆地并不是很常用twitter,虽然注册了较久,可是用的并不多;

    一开始是想拿来做一下博客推广的,于是在上面放了很多博客文章的链接,后来发现这样很有制造重复信息的嫌疑,除了传播更为方便,也无甚更大优势,于是就把发的这些内容全部给删掉了。

    期间也用过一下腾讯的滔滔,不过滔滔毕竟不是腾讯的主营业务,和qq号码绑定的过于紧密,且个人也没有太多要唠唠叨叨的东西,所以也就作罢了。

    近期看书相对多一些,这些书中本身属于教程类型的书籍可以采用书摘形式,但还有不少属于开卷有益的类型,做书摘有些小题大做了,因此就把twitter拿来对阅读中的闪光点做以记录,再夹杂偶尔的闲言碎语。

    每个人对twitter都会有自己的用法,盆地对twitter尚未形成稳定的用法,twitter也并非盆地网络生活中不可缺的一部分,虽然如此,不过在博客中加入twitter的方法是相通的,所以也可以做以记录。

二、将Twitter更新加入侧栏的官方方案

   1.登录twitter

   2.在右上方选择"Setting"进入设置界面

   3.在这时界面中点击下图红框中链接部分

twitter-setting

Read the rest of this page »