希望这很容易解决。我有一些元素可以将以前输入到数据库中的表单数据拉入数据库中,这些元素作为自定义字段添加到帖子中。我使用php查询提取这个:
<a href="<?php echo get_post_meta($post->ID, 'societywebsite', true); ?>" target="_blank" >Website</a>
显然,这会出现在Loop(content.php)中,并会添加到任何适当的帖子中。但是,有时候,由于用户选择不将某个网站输入到表单上的“socialwebsite”字段中,因此不会有任何数据。当发生这种情况时,不需要链接到“网站”,因为它不会有用。
我想知道的是如何使用If子句来检查数据是否存在,然后只显示链接。我不介意javascript,但更清洁,更少“hacky”解决方案,更好,因为content.php将运行多次搜索结果。
非常感谢您提供的任何帮助或建议。
答案 0 :(得分:1)
另一种方法是,根据Wordpress Codex的更多内容如下......
$societywebsite = get_post_meta($post->ID, 'societywebsite', true);
if ($societywebsite != '') {
echo '<a href="' . $societywebsite . '" target="_blank" >Website</a>';
}
您可以在此末尾添加“else”以进行调试。
答案 1 :(得分:0)
假设该字段是网址的字符串,您可以执行以下操作。
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个字符,则显示链接。如果不是......它将不会做任何事情。