在 WordPress 文章里运行 PHP 代码
一月 13th, 2005
基于安全性考虑,WordPress 的文章是不能直接运行写进去的 PHP 代码的,但是某些时候我们需要文章有提供一些动态内容的能力,这个限制就很让人不爽了。
幸运的是 WordPress 有强大的插件功能,更幸运的是已经有人写了插件让我们可以这么做。Mark Somerville 的 Run PHP 就是其中一个,并且工作得很好。 安装并激活 Run PHP 后,我们就可以在 WordPress 的文章里使用
<phpcode>
echo 'Hello, This is from PHP!';
</phpcode>
这样的格式来插入 PHP 代码了,并且可以调用 WordPress 及其插件提供的函数。
大多数时候它工作得很好,但是因为这对伪标签跟 HTML 标签一样使用 <> 符号,所以在某些时候会出问题,例如
<a href="<phpcode>echo 'test';</phpcode>just a test">test</a>
这样就会造成很严重的问题。
为此,我把 runphp.php 里 26、27 两行的代码
while($phpstart = strpos($data, "<".$tag.">")) {
$phpend = strpos($data, "</".$tag.">");
改成了
while($phpstart = strpos($data, "[".$tag."]")) {
$phpend = strpos($data, "[/".$tag."]");
修改之后,就应该使用 [phpcode] [/phpcode] 来插入 PHP 代码了,这样刚才那个问题就解决了。
其实,刚才那个在链接目标里使用 PHP 代码的情况是很有用,我们可以用
[phpcode]bloginfo('url');[/phpcode]
来代替文章里出现的自己 Blog 的 URI,这样可以保证在 Blog 的 URI 改变了的情况下,文章内容无需任何修改里面的链接也一样正常。虽然使用相对路径也可以解决这个问题,但是在一些新闻阅读软件里阅读 Blog 时相对路径是无法正常工作的。
Tags: Software 软件, WordPress
一月 18th, 2005 at 23:52
在wp文章里面显示php语句
今天加入中文WordPress Planet时,mulberry说俺的rss parse有问题。检查后发现是wp文章里面有php语句,解决办法如下;
From:Rainux
...