我已经在互联网上搜索了6个小时了,所以我决定在论坛上问这个问题,非常感谢大家的帮助。
我只是想my permalink 表示(如投资组合、帖子等)
http://mysite.com/?portfolio=xxxx¶m=whatever
我需要
param, 因为post本身定义了“whatever”参数,并且post中有一个搜索表单,它使用此参数初始化自身(如果该参数位于URL中,则searchform获取该参数)。对于单个链接,我可以将参数放入链接中,但WP限制性地定义永久链接。
我尝试添加add_query_arg() 至功能。php没有成功(甚至不清楚在哪里放置代码(single.php或functions.php)以及如何从帖子中调用函数)。
然后我尝试添加custom fields 和Meta Boxes, 但它们似乎包含了额外的参数,但没有将其添加到URL中。所以我得到的只是:
http://mysite.com/?portfolio=xxxx
a.)
BEST SOLUTION 最好的方法是,向post(或post类型)添加一个自定义字段,这将插入
param 并显示带有该参数的永久链接URL。
b、 ()JUDO SOLUTION 最简单的方法是,将此参数(文本)添加到链接中。
在线上有无数关于这一点的帖子,但它们都是指解析外部链接传递的参数($\\u GET),并有条件地更改网站的外观,或者为每个帖子/页面添加一个特定的参数/值。我不需要这个。
有没有办法添加这个1 single parameter 直接从帖子发送到permalink URL,而无需更改18个php文件和编写100行代码?
谢谢你的帮助!
M
另外,我正在将WP 3.6.1 DE与inovado一起使用
。
Things I have already tried
webopius:在wordpress中使用自定义url参数
SO网友:Milo
的Codex页post_link
有一个与您需要的相似的示例。对于自定义帖子类型,还有post_type_link
滤器
这将符合你的主题functions.php
, 并检查是否有元密钥query_arg
存在,并将其附加到URL(如果存在):
function wpa_post_link( $url, $post ){
if ( $meta = get_post_meta( $post->ID, \'query_arg\', true ) ) {
$url = add_query_arg( \'param\', $meta, $url );
}
return $url;
}
add_filter( \'post_link\', \'wpa_post_link\', 10, 2 );