仅当字段已填写时才显示链接
Posted
技术标签:
【中文标题】仅当字段已填写时才显示链接【英文标题】:Only show link if the field has been filled 【发布时间】:2012-08-20 06:22:12 【问题描述】:在我的 Wordpress 网站的作者页面上,我使用此代码显示作者的 twitter URL:
<a href=”http://twitter.com/<?php the_author_meta(‘twitter’); ?>” target=”_blank”>Twitter</a>
此代码的问题在于,即使用户未在其后端配置文件中填写 Twitter 字段,它仍会显示链接。我怎样才能让它只显示如果用户填写了他们的推特?
我认为一个基本的 PHP IF 语句将是解决方案?
【问题讨论】:
【参考方案1】:简单。您可以使用get_the_author_meta
来获取meta
的值(而不是打印值的the_author_meta
)。
然后,将其与 ""
(empty string) 进行比较,如果它不为空 - 回显链接,
否则....,我们没有其他方法 - 它只是不会打印链接。
<?php if(get_the_author_meta('twitter') != ""): ?>
<a href="http://www.twitter.com/<?php the_author_meta('twitter'); ?>" target="_blank">Twitter</a>
<?php endif; ?>
【讨论】:
确实如此,请更新您的答案以添加结束 标记,我会接受它是正确的,非常感谢! 第二个注意事项,它似乎无法正常工作。 IF 语句有效,因此如果该字段未填写,则不会出现链接。但是,一旦填充,它就不会抓取 twitter 字段。这意味着 部分从不返回任何内容。你的代码有错别字吗? 更新了代码(更改了引号的类型),试试更新的代码并更新我 它现在工作正常,但是 url 变成: mydomain.com/"http://twitter.com/username" 我能想到的唯一解决方案是删除 A 标签中的双引号,它会修复它,您知道其他解决方案吗? 再次更新(又是那些奇怪的引号)。以上是关于仅当字段已填写时才显示链接的主要内容,如果未能解决你的问题,请参考以下文章