【问题标题】: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 语句将是解决方案?

【问题讨论】:

    标签: php wordpress field href


    【解决方案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 标签中的双引号,它会修复它,您知道其他解决方案吗?
    • 再次更新(又是那些奇怪的引号)。
    猜你喜欢
    • 2016-01-19
    • 2013-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-22
    • 1970-01-01
    相关资源
    最近更新 更多