0

希望这很容易解决。我有一些元素将以前输入到数据库中的表单数据拉入,这些元素作为自定义字段添加到帖子中。我使用这样的 php 查询来提取它:

<a href="<?php echo get_post_meta($post->ID, 'societywebsite', true); ?>" target="_blank" >Website</a> 

显然,这出现在循环(content.php)中,并将被添加到任何适当的帖子中。但是,有时由于用户选择不将网站输入到表单上的“societywebsite”字段中,因此不会有任何数据。发生这种情况时,就没有必要提供指向“网站”的链接,因为它不会去任何有用的地方。

我想知道的是如何有一个 If 子句来检查数据是否存在,然后仅在存在时才显示链接。我不介意 javascript,但解决方案越干净、越不“hacky”越好,因为 content.php 会为搜索结果运行多次。

非常感谢您提供的任何帮助或建议。

4

2 回答 2

1

根据Wordpress Codex,另一种方法是以下......

$societywebsite = get_post_meta($post->ID, 'societywebsite', true);

if ($societywebsite != '') {
    echo '<a href="' . $societywebsite . '" target="_blank" >Website</a>';
}

您可以在此末尾添加“else”以进行调试。

于 2013-01-25T23:39:27.470 回答
0

假设该字段是 url 的字符串,您可以执行类似的操作。

if (strlen(get_post_meta($post->id, 'societywebsite', true)) < 1) {
    echo '<a href="' . get_post_meta($post->ID, 'societywebsite', true) . '" target="_blank" >Website</a>';
}

这将非常简单地检查该字段是否具有超过 1 个字符的字符串。如果超过 1 个字符,则会显示链接。如果没有......它不会做任何事情。

于 2013-01-25T23:03:14.107 回答