2011-05-25 61 views
0

我正在重新设计我的wordpress插件之一的模板机制。所以用户可以根据自己的需要定制设计。以此目的。我问一个模板格式字符串与一些选项,我可以稍后替换。str_replace正在替换错误的地方的字符串

样品模板字符串:

$template = '<a href="%POST_URL%" title="%POST_TITLE%"><img src="%POST_THUMB%" /></a>'; 

代码:

$temp .= $template; 
$temp = str_replace("%POST_TITLE%", $ptitle, $temp); 
$temp = str_replace("%POST_URL%", the_permalink(), $temp); 
$temp = str_replace("%POST_THUMB%", lead_img_thumb_post($width ,$height ,$imagepath ,$icontype), $temp); 

输出:

%POST_URL%%POST_URL%%POST_URL%<a href="" title="%POST_TITLE%"><img src="%POST_THUMB%" /></a><a href="" title="%POST_TITLE%"><img src="%POST_THUMB%" /></a><a href="" title="%POST_TITLE%"><img src="%POST_THUMB%" /></a> 

为何%POST_URL%正在向前推进

+0

尝试更改变量名称 – 2011-05-25 02:56:28

+0

将'$ template'追加到$ template时是否为'$ temp'? – mdec 2011-05-25 02:57:25

+0

提示:str_replace支持数组。 – netcoder 2011-05-25 03:28:13

回答

3

您需要使用get_the_permalink()代替。 the_permalink()将链接输出到浏览器方向。改为使用get_whatever()将导致WP返回数据,而不是输出数据。

+0

我在你的答案前1分钟就完成了。 – 2011-05-25 03:37:11