the_sub_field()
функция может производить вывод (ссылка), или нет.
Первое, что нужно сделать, это захватить этот вывод, используя буфер вывода вчтобы проверить его содержимое:
<?php
ob_start();
the_sub_field( 'funding_link' );
$link = ob_get_clean();
Далее просто проверьте содержимое $link
: если не пустая строка, выведите HTML-код кнопки
if( $link != "" )
{
echo "<div class=\"button\"><a href=\"$link\">Donate</a></div>";
}
Наконец закройте код PHPblock
?>
Если вы используете дополнительные настраиваемые поля , тогда
the_sub_field(...)
isэквивалентно
echo get_sub_field(...)
В этом случае решение проще, поскольку вы можете просто получить ссылку на переменную без использования буфера:
<?php
$link = get_sub_field( 'funding_link' );
if( $link != "" )
{
echo "<div class=\"button\"><a href=\"$link\">Donate</a></div>";
}
?>