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%继续前进     

解决方法

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...