Wordpress提供了一个名为"the_permalink()"的函数,它返回,你猜对了!,在一个帖子循环中,给定帖子的永久链接.
我正在尝试URL编码永久链接,当我执行此代码时:
它以HTML格式生成这些结果:
http://wpmu.local/graphjam/2008/11/06/test4/ http://wpmu.local/graphjam/2008/11/06/test4/ http://wpmu.local/graphjam/2008/11/06/test4/ http://wpmu.local/graphjam/2008/11/06/test4/ http%3A%2F%2Fwpmu.local%2Fgraphjam%2F2008%2F11%2F06%2Ftest4%2F
我希望输出的第2,3和5行是URL编码的,但只有第5行是这样的.思考?
根据文档,the_permalink
打印永久链接vs返回它.所以,urlencode
没有得到任何编码.
试试get_permalink
.
[ 编辑 ]
编辑有点晚,但我没有意识到打印计数是一个问题.
这是他们全部来自的地方:
the_permalink()
回应永久链接
get_the_permalink()
返回永久链接,以便将其分配给变量.
(与WordPress中的大多数函数一样:the_something()有一个get_the_something()来返回值而不是回显它)
@Jonathan有理由,以及你应该在WordPress中处理它的方式(即使用正确的函数来完成工作).
以下是在没有返回字符串的函数时如何修复它:
ob_start(); the_permalink(); $permalink = ob_get_clean(); print(urlencode($permalink));