我将外部链接存储在变量中$extlink
根据帖子中的不同选择生成。
如何将永久链接设置为$extlink
因此,当我点击帖子时,它会通过程序/代码将我带到链接
<?php while (have_posts()) : the_post(); ?>
<div class="bookindex">
<?php the_title();?>
<?php
$ext1 = get_field(\'bookzone\');
$extlink="http://".$ext1.".com";
add_filter( \'post_link\', \'external_permalink\', 10, 2 );
function external_permalink( $link, $post )
{
$meta = get_post_meta( $post->ID, $extlink , TRUE );
$url = esc_url( filter_var( $meta, FILTER_VALIDATE_URL ) );
return $url ? $url : $link;
}
?>
</div>
<?php endwhile; ?>
SO网友:P-S
我认为这里有问题:
$meta = get_post_meta( $post->ID, $extlink , TRUE );
这是功能:
get_post_meta(int$post\\u id,string$key=“”,bool$single=false)
您正在将$extlink设置为$key 参数,但它真的是一个元键?根据您的解释,这似乎是bookzone 钥匙
如果上述内容有意义,则在函数内部修复以下内容:
$meta = get_post_meta( $post->ID, \'bookzone\', TRUE );
正如Pat J所说,还要拆下
add_filter 以及
function 自身在while循环之外。设置此特定筛选器时
once, 每当在Wordpress循环中调用permalink时,Wordpress将执行过滤器的功能。