我想使用post meta作为不同帖子类型的链接。 我写了这样的话:
<li class="middle">
Glass type: <span><a href="http://www.domain/diffrient-posttype/<?php echo get_post_meta($post->ID, 'glass', true); ?>"><?php echo get_post_meta($post->ID, 'glass', true); ?></a></span>
</li>
它的工作正常,但我有两个单词短语的问题。在链接上我获得空间。
你能帮助我改变空间吗? 你有什么好主意来解决这个问题吗?
答案 0 :(得分:0)
尝试
str_replace(' ', '-', $url);
或
preg_replace('/[[:space:]]+/', '-', $url);
它会将所有空格替换为 - 破折号。
答案 1 :(得分:0)
WordPress有sanitize_title function可将字符串转换为适合网址的版本。
$urlBase = 'http://www.domain/different-post-type/';
$type = get_post_meta($post->ID, 'glass', true);
$typeSlug = sanitize_title( $type );
$url = $urlBase . $typeSlug;
?>
Glass type: <span><a href="<?php echo $url; ?>"><?php echo $type; ?></a></span>
答案 2 :(得分:0)
好的,我想通了..最终的代码看起来像这样:
<li class="middle">
Glass type: <span><a href="http://www.domain/diffrient-posttype/<?php echo str_replace(' ', '-', get_post_meta($post->ID, 'szklo', true)); ?>"><?php echo get_post_meta($post->ID, 'glass', true); ?></a></span>
</li>