str_replace正在替换错误位置的字符串

时间:2011-05-25 02:54:05

标签: php wordpress str-replace

我正在重新设计我的wordpress插件之一的模板机制。因此用户可以根据自己的需要进行定制设计。以此目的。我问一个模板格式字符串,其中包含一些我可以在以后替换的选项。

示例模板字符串:

$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%正在前进

1 个答案:

答案 0 :(得分:3)

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