Posts Tagged WordPress

去掉傲游404页面

最新版的傲游2.5.10有点恶心,劫持了我们可爱的404页面,让404页面总是一闪而过,无法细看芳容,太可恶了

去掉的方法是,干掉安装目录下

/template/page/404

目录

有趣的是,wordpress等用php代码方式返回404的,不会被劫持

另外说一下,用php返回404的最简单方法

<?php

header(”HTTP/1.0 404 Not Found”);

?>

当然,header前面就不能有输出了,不然会报错的

  • Share/Bookmark

Tags: , , ,

wordpress插件推荐

Visitor Maps and Who’s Online

作者为 Mike Challis

很强大的一个插件,类似于zen cart的who is online,但更强大点,有很多设置项

下载地址:Visitor Maps and Who’s Online

由于wordpress本身就很强大,所以可以在后台自己安装的

wordpress的插件真多,看得头晕,陆续挑些好的发表出来,日后整理

 

  • Share/Bookmark

Tags: , , , , , , ,

准备做个SEO专业网站

用的还是wordpress,因为不太熟的网站程序没空研究

域名准备用www.seodt.com,网站就叫SEO动态吧,尽量跟着变化走

这个站还没开通,要先准备点东西,需要把SEO技术、知识整理好一点

很忙,没空去弄

  • Share/Bookmark

Tags: , , ,

wordpress自动升级时出现Allowed memory size of 33554432 bytes exhausted

今天把wordpress升级到2.8.4,出现如下错误

Allowed memory size of 33554432 bytes exhausted

还以为是php.ini搞的鬼,遂改大了这个值,还是没用

查了一下,才知道是wordpress配置里本身有这个限定,在wp-settings.php文件里

找到

define(’WP_MEMORY_LIMIT’, ‘32M’);//这是默认值

改为

define(’WP_MEMORY_LIMIT’, ‘64M’);//或更大的数值

即可

看来wordpress越来越庞大了,以前升级都不会有这种情况

  • Share/Bookmark

Tags: , , , , , ,

什么是TrackBack?

TrackBack是一种网络日志应用工具,它可以让网志作者知道有那些人看到自己的文章后撰写了与之有关的短文。在Movable Type和WordPress软件中,包含有该功能。这种功能通过在网志之间互相「ping」的机制,实现了网站之间的互相通告;因此,它也可以提供提醒功能。
  *TrackBack功能一般出现在一个网志文章的下方,同时会显示对方网志的摘要信息、URL和网志标题。
  *TrackBack规范由Six Apart在2000年制订,并在Movable Type2.2中予以实现。
  trackback (引用通告)
  trackback是现在WEB2.0的产物,BLOG成为WEB2.0的关键包括TRACKBACK的功能,原理如下:
  在自己的空间(不管你在哪里建立了自己的BLOG或SPACE),你都必不可少的发表一些评论,以前的做法就是在文章下面跟帖评论,很可能要不定时回去看看自己的评论别人是如何看待的,TRACKBACK就是为了解决这个问题而生的.
  你在BLOG发表一篇评论的时候,在尾部的引用栏输入对方文章的引用(TRACKBACK)地址,那么你发表完文章后,对方的BLOG就会自动在你所评论的文章的尾部添加了你的引用信息,所显示的信息因程序而不同,基本的要素包括了你评论的标题和你的评论的链接,其他人可以很清楚地看到你的引用,并很方便地点击就可以来看你的文章.
  Blog跟BBS有点重要的不同,Blog是一种个人创作,用Blog来发表自己的东西,保存自己的东西,即使是对他人Blog文章的评论也要在自己的Blog中永久保留下来。通过Trackbak,我就可以在自己的Blog中发表文章,同时把自己这篇文章的URL地址Ping到鱼头的那篇文章上去。这样,所有阅读鱼头文章的人也能通过Trackback顺藤摸瓜地来我的Blog看我的文章。
  所以,当我们的Blog有了Trackback Ping功能,那么谁都可以通过Trackback Ping来发表意见和评论了。这样,多家Blog网站就通过相关话题而联接起来。各种评论在Internet上相互连接而织成一张大网。因此,可以说, Trackback创造出了Blog与BBS、Diary完全不同的文化,Blog的世界通过Trackback而变成真正的无限互连。
  作为Blogger,让我们习惯于这样讨论问题和做评论吧:把内容写在自己的Blog里面,Trackback Ping到别人的Blog。这个概念是论坛模式里从来没有的,称为Remote Commenting。
  早期版本的Trackback规范中,Ping是GET方式的HTTP请求,现在不再支持GET方式,只能用POST方式。
  参数包括:
  title – 文章的标题
  excerpt – 文章的摘要。在Movable Type系统中,如果摘录信息超过255个字符将会被截断为252个字符,并在后面增加…三个字符
  url – 文章的永久连接。象其它永久连接一样,这个连接应可能准确地在页面中定位文章的入口,因有疑问时这个链接会用到
  blog_name – 发表文章的blog的名称
  在上述的参数中只有url是必须的。如果title没有提供,url的值将被用作标题。
  当我的Blog发出这个Trackback Ping后,将接收一个简单的XML格式应答,如果Ping成功,那么应答的格式如下:
  <?xml version=”1.0″ encoding=”iso-8859-1″?>
  <response>
  <error>0</error>
  </response>
  而失败应答的格式为:
  <?xml version=”1.0″ encoding=”iso-8859-1″?>
  <response>
  <error>1</error>
  <message>The error message</message>
  </response>

  • Share/Bookmark

Tags: , , , , , , , , ,

Apache服务器wordpress设置永久连接后怎么去掉INDEX.PHP

在网站根目录下创建.htaccess文件,加入下列内容

# BEGIN WordPres
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>
# END WordPress

wordpress需要改为你自己的wordpress文件夹的名字,如果是主目录下,就不必了,直接干掉

即可

原来我错了,从nginx服务器搬过来时,忘了没有.htaccess文件,导致除了主页都无法访问

难怪IP少了好多。。。晕死

  • Share/Bookmark

Tags: , , , , , , , , ,

wordpress博客文章中添加音乐的方法

在公告或文章中加入以下代码:

代码一:

<BGSOUND src=”音乐文件网址” loop=infinite>

代码二:

<object id=”videowindow1″ classid=”clsid:6bf52a52-394a-11d3-b153-00c04f79faa6″ width=”300″ height=”45″ codebase=”http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701″><param name=”URL” value=”http://www.crazylemon.net/wp-content/uploads/2009/07/bawohuilaile.mp3″ /><param name=”playCount” value=”infinite” /><param name=”autoStart” value=”0″ /><param name=”volume” value=”100″ /><param name=”uiMode” value=”full” /><param name=”stretchToFit” value=”1″ /><embed id=”videowindow1″ type=”application/x-mplayer2″ width=”300″ height=”45″ stretchtofit=”1″ uimode=”full” volume=”100″ autostart=”1″ playcount=”infinite” url=”http://www.crazylemon.net/wp-content/uploads/2009/07/bawohuilaile.mp3″></embed></object>

代码说明:

两种代码都可以为博客添加音乐,它们的分别在于:

加入背景音乐,播放器不会显示在页面上;
加入播放器,使用播放器播放背景音乐。

代码二中以下部分可以自行替换:

音乐文件网址可以替换上自己喜欢的音乐文件网址;
语句<PARAM NAME=”playCount” VALUE=”infinite”>的“infinite”可以替换为数字,表示重复播放多少次,如果不更改表示永久循环播放;
语句<PARAM NAME=”autoStart” VALUE=”1″>表示是否自动播放,更改为”0″时不会自动播放,”1″的时候是自动播放;
height和width两个属性可以改变播放器的大小。

  • Share/Bookmark

Tags: , , , , , ,

google-analytics-for-wordpress 3.0 bug

升级后,后台出错:

Warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, ‘GA_Admin::add_config_page’ was given in …/wp-includes/plugin.php on line 339

无法操作后台,解决方法是进ftp删了这个插件,再传上旧版的:

http://downloads.wordpress.org/plugin/google-analytics-for-wordpress.2.9.5.zip

重新启用下就行了,原来的设置信息不变

  • Share/Bookmark

Tags: , , , , , , , ,

修改WordPress留言头像的大小

在comments.php里面找到:

<?php wp_list_comments(”); ?>

改为:

<?php wp_list_comments(’avatar_size=60′); ?>

即60*60像素

  • Share/Bookmark

Tags: , , , , ,

分析WordPress的Rewrite机制

家都知道,WordPress 可以通过 Apache 的 mod_rewrite 模块,使用 .htaccess 文件来重写URL,生成静态链接(或称永久链接),如 http://example.com/年/月/日/日志名/ ,使URL更加美观也对搜索引擎更友好。但具体是如何实现的,可能有些朋友不是很清楚,因此我在这里稍稍阐述下。而在不支持 .htaccess 的主机环境中,也可以使用 http://example.com/index.php/年/月/日/日志名/ 这种形式的URL,以及使用ISAPI等东东,原理都差不多,本文就不探讨了。

我以 http://www.crazylemon.net/database-dict-for-wordpress-23/2008/02/25/ 为具体例子进行分析。首先我们先来看看WordPress根目录下的 .htaccess 文件,其中有一段如下

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

意思是指,当接收到的请求不是一个文件或目录时,则会重写为WordPress根目录下的index.php文件,然后 index.php 就开始处理请求。

index.php 会包含 wp-blog-header.php, wp-blog-header.php 会包含 wp-config.php, wp-config.php 又会包含 wp-settings.php,最后 wp-settings.php 会包含一大堆文件进来,晕了吧。其中, wp-includes/query.php 中的 WP_Query 类和 wp-includes/classes.php 中的 WP 类是Rewrite最主要的,因此我们将对象实例化

$wp_the_query =& new WP_Query();
$wp_query     =& $wp_the_query;
$wp_rewrite   =& new WP_Rewrite();
$wp           =& new WP();

做了这么多准备工作后,WP真正开始处理请求了,在 wp-blog-header.php 中调用wp()函数,在这个函数执行了 WP 类的成员方法main()

function main($query_args = ”) {
    $this->init(); //初始化,获取当前用户信息
    $this->parse_request($query_args); //解析请求
    $this->send_headers(); //发送头信息
    $this->query_posts(); //查询日志
    $this->handle_404(); //操作404(URL地址不存在)
    $this->register_globals(); //注册全局变量
    do_action_ref_array(’wp’, array(&$this));
}

我们进入$this->parse_request()瞧瞧,通过$_SERVER[’REQUEST_URI’]和过滤得到字符串 ‘database-dict-for-wordpress-23/2008/02/25′ 赋值给$request_match,与存储在数据库中的rewrite规则集进行正则匹配,rewrite规则集类似与下面这个样子,当然,比下面的多了很多。

[wp-feed.php$] => index.php?feed=feed
[wp-commentsrss2.php$] => index.php?feed=rss2&withcomments=1
[(about)/trackback/?$] => index.php?pagename=$matches[1]&tb=1
[page/?([0-9]{1,})/?$] => index.php?&paged=$matches[1]
[comments/(feed|rdf|rss|rss2|atom)/?$] => index.php?&feed=$matches[1]&withcomments=1
[search/(.+)/?$] => index.php?s=$matches[1]
[category/(.+?)/?$] => index.php?category_name=$matches[1]
[tag/(.+?)/?$] => index.php?tag=$matches[1]

我的请求与 ‘([^/]+)/([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})(/[0-9]+)?/?$’ 这条匹配,所以我的请求被转化为 ‘name=database-dict-for-wordpress-23&year=2008&monthnum=02&day=25&page=’,如果请求都没匹配上那就肯定404了。接着就是通过 $this->query_posts() 来查询日志信息了,查询不到那还是404,废话…

把这些都整完了,回到 wp-blog-header.php,包含 wp-includes/template-loader.php 来加载模板并显示,日志显示日志,页面显示页面,404显示404,总之就是各神归位,OVER

  • Share/Bookmark

Tags: , , , , , , , , , , , , , ,