Получение значения настраиваемого поля для functions.php и отображение в шорткоде - PullRequest
0 голосов
/ 15 ноября 2018

Может быть, кто-то сможет помочь мне с возникшей у меня проблемой, поскольку я застрял без идей.

У меня на сайте есть шорткод, который отвечает за отображение фотосетей непосредственно из Flickr (через внешниеплагин).

Код, сгенерированный плагином, выглядит следующим образом: [justify_image_grid preset = c1 flickr_user = USERID flickr_photoset = PHOTOSETID]

В моих сообщениях блога отображаются различные фотосеты из Flickr.Я бы хотел избежать необходимости каждый раз редактировать шорткод, чтобы обновлять шорткод с соответствующим идентификатором фотосета, поэтому я решил использовать настраиваемое поле (Key = FlicktPhotoset, Value = Photoset ID) и добавить функцию к functions.php, которая бысоздать мой шорткод, который будет включать в себя оригинальный шорткод со значением из настраиваемого поля.

Код в functions.php следующий:

function flickr_shortcode() {
    echo do_shortcode('[justified_image_grid preset=c1 flickr_user=USERNAME flickr_photoset=PHOTOID]');
}
function flickr_shortcodes_init() {
    add_shortcode('flickr', 'flickr_shortcode');
}
add_action('init', 'flickr_shortcodes_init');

То, что я застрял, это как передать шорткодзначение в этот код для автоматического извлечения PHOTOID из значения настраиваемого поля.

1 Ответ

0 голосов
/ 15 ноября 2018

Примерно так:

function flickr_shortcode() {
    $FlicktPhotoset = get_post_custom_values("FlicktPhotoset");       
    echo do_shortcode('[justified_image_grid preset=c1 flickr_user=USERNAME flickr_photoset='.$FlicktPhotoset[0].']');
}
function flickr_shortcodes_init() {
    add_shortcode('flickr', 'flickr_shortcode');
}
add_action('init', 'flickr_shortcodes_init');
...