小编给大家分享一下设置WordPress中函数get_term_link参数的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
<强> WordPress中函数get_term_link的参数怎么设置? 强>
WordPress中函数get_term_link的参数设置问题
最近帮一个朋友写企业类主题,需要对产品设定一个专门的帖子类型名叫产品,为了管理方便性,我对产品设置了专门的分类类型和标签类型,分类类型为product_cat (WordPress本身的分类类型为一类)。
为何要用get_term_link吗?:
新类型的分类是无法用& lt; ?php echo get_category_link ($ category_id添加);比;输出分类链接地址的,需要用get_term_link()函数,此函数用法如下:
& lt; ?php get_term_link(术语,分类美元);?在
具体参考WordPress法典:http://codex.wordpress.org/Function_Reference/get_term_link
问题:
举个例:
——自定义分类ID的变量为美元,美元的术语是根据后台设置而改变的,为了方便说明,这里假定后台参数为$ custom_term=8
——我要获取自定义分类ID为美元术语的分类链接地址,那么按照官方说明应该是:
& lt; php ? 项=custom_term美元; 回声get_term_link ($, & # 39; product_cat& # 39;); ?在
看似没错,但问题来了,这样会返回错误:
可说是致命错误:对象的类WP_Error不能转换为字符串。。没错啊,直接用echo $术语;输出结果的确是8,这就让人郁闷了……
不过如果你直接这样:
& lt; ?php echo get_term_link (8 & # 39; product_cat& # 39;);?在
又能正常工作。
<强>解决方法:强>
在WordPress法典打转时,无意中看到国外朋友也碰到这个问题,然后他自己解决了,顿悟……传送门》
原来是变量类型问题,这get_term_link函数和其它常用的WordPress函数不同,不会自己转换变量类型,你得先把字符类转换为整数才能正常工作,好五体投地的函数!
下面这样就能正常工作:
(坐在沙发上的大刀注:intval中(美元,10)会更好,不然美元项值太大的时候会有进制转换问题,要么就用美元(int)术语)
& lt; php ? 项=custom_term美元; 回声get_term_link (intval中(术语)美元,& # 39;product_cat& # 39;); 祝辞;
所以,以后遇到类似这郁闷的函数,就要考虑是不是变量数据类型问题了。
折腾玩(完)。