Добавление произвольных полей с шорткодом

Иногда бывает нужно поместить в произвольном месте внутри поста некоторый контент, например ссылку на скачивание, изображение, специальную форму, предварительно стилизовав их. В этом нам помогут шорткоды и произвольные поля. Ниже приведенные функции помещаются в файл functions.php вашей темы.

function get_my_custom_field() {
    global $post;
    // возвращает ссылку изображения в html теге
    return '<img src="' . get_post_meta($post->ID, "my_custom_field_image", true) . '" class="custom-image" />';
}
add_shortcode('insert-custom-field', 'get_my_custom_field');

Данный пример позволяет вывести в любом месте поста шорткод [insert-custom-field], который добавит изображение, ссылка на которое добавлена в произвольном поле my_custom_field_image

function get_my_custom_field() {
    global $post;
    // возвращает значение контента произвольного поля
    return get_post_meta($post->ID, "my_custom_field_name", true);
}
add_shortcode('insert-custom-field', 'get_my_custom_field');

Данный пример выводит с помощью шорткода [insert-custom-field] содержание произвольного поля my_custom_field_name

function get_my_custom_field() {
    global $post;
    // возвращает стилизованную (Bootstrap 3) кнопку для скачивания
    return '<a class="btn btn-danger btn-sm" href="' . get_post_meta($post->ID, "download_url", true) . '" rel="nofollow" title="Скачать ">Скачать <i class="fa fa-download"></i></a>
}
add_shortcode('insert-custom-field', 'get_my_custom_field');

Данный пример выводит с помощью шорткода [insert-custom-field] кнопку на скачивание стилизованную под Bootstrap 3