我通过以下方法向用户配置文件页面添加了一些额外的$curauth字段:
function change_contactmethod( $contactmethods ) {
$contactmethods[\'twitter\'] = \'Twitter URL\';
// more $contactmethods go here
return $contactmethods;
}
add_filter(\'user_contactmethods\',\'change_contactmethod\',10,1);
它们以这种方式显示在作者身上。php模板,仅当在te用户配置文件中输入链接时才显示链接:
<?php echo $curauth->twitter; ?>
但我需要做的是在显示之前确定curauth字段是否存在,因为我想将twitter URL转换为链接图像。调用$curauth->推特;如上所述,如果在用户配置文件中未输入链接,则链接图像仍会显示图像。
这就是我所尝试的,但运气不佳:
<?php $my_post_meta = get_post_meta($post->ID, \'twitter\', true);
if ( ! empty ( $my_post_meta ) )
echo \'<a href=" \'.$my_post_meta.\' "><img src="<?php bloginfo(\\\'template_url\\\'); ?>/images/twitter.png"></a>\'; ?>
2011年12月23日更新-现在可以:
<?php if ( !empty( $curauth->twitter ) ) { echo \'<a href=" \' . $curauth->twitter . \'"><img src="\' . get_bloginfo(\'template_url\') . \'/images/twitter.png"></a>\'; } ?>