Функция PHP, возвращающая ввод

Я работаю над настройкой функции PHP, которая будет принимать входные данные из настраиваемого поля (сгенерированного ACF) на странице в бэкэнде WordPress и генерировать HTML. Вот что я называю в моих файлах PHP/HTML....

<?php connect_links('github', the_field( 'github_url', 94 ) ); ?>

и вот код из моего functions.php:

<?php
function connect_links($type, $url){
$email = '';
switch ($type) {
    case 'facebook':
        $fa_type = 'fa-facebook-official';
        break;
    case 'github':
        $fa_type = 'fa-github-square';
        break;
    case 'linkedin':
        $fa_type = 'fa-linkedin-square';
        break;
    case 'twitter':
        $fa_type = 'fa-twitter-square';
        break;
    case 'email':
        $fa_type = 'fa-envelope';
        $email = 'mailto:';
        break;
    default:
        $fa_type = 'no-fa-type';
        break;
}
?>
    <a href="<?php if($email) echo $email; echo $url; ?>">
        <i class="fa <?php echo $fa_type; ?> blue-and-white-icon"> </i>
    </a>
<?php
}

?>

Вместо того, чтобы получать ввод из бэкэнда wordpress и использовать его в функции, он работает так, как будто у него нет второго ввода, затем берет второй ввод и печатает его в HTML между элементами.

Моя функция работает, как и ожидалось, когда я вызываю ее с реальными вводами, такими как

connect_links('github', 'https://www.github.com/michaeljwiebe' );

1 ответ

Решение

Похоже, вы хотите get_field(), которая возвращает значение: https://www.advancedcustomfields.com/resources/get_field/

В отличие от the_field(), который печатает значение.

Другие вопросы по тегам