WordPress: исключить избранное изображение через attr

#wordpress #gallery

#wordpress #Галерея

Вопрос:

я знаю ответ, приведенный ранее с аналогичным вопросом здесь, на SO, но я застрял на нескольких плагинах галереи, которые игнорировали «исключить» в шорткоде галереи. У обоих из них есть эта строка в их php:

 extract(shortcode_atts(array(
    'orderby' => 'menu_order ASC, ID ASC',
    'id' => $post->ID,
    'itemtag' => 'dl',
    'icontag' => 'dt',
    'captiontag' => 'dd',
    'columns' => 3,
    'size' => 'thumbnail',
), $attr));
 

я подозреваю, что просто включите «исключить» с такими вещами (из других ответов SO):

  if (!isset($attr['exclude']) || empty($attr['exclude']))
    $attr['exclude'] = array($thumbnail_ID);
elseif (is_array($attr['exclude']))
    $attr['exclude'][] = $thumbnail_ID;
 

но это не работает … кто-нибудь может помочь? этот вопрос уже вызвал у меня несколько бессонных ночей и грипп… Большое спасибо!

Ответ №1:

ваш вопрос для меня немного расплывчатый, и я не совсем понимаю, чего вы хотите, но в любом случае попробуйте добавить параметры для включения и исключения :

 'include'    => '',
'exclude'    => ''
 

в вашем случае

 extract(shortcode_atts(array(
    'orderby' => 'menu_order ASC, ID ASC',
    'id' => $post->ID,
    'itemtag' => 'dl',
    'icontag' => 'dt',
    'captiontag' => 'dd',
    'columns' => 3,
    'size' => 'thumbnail',
    'include'    => '', //  ID to include or ..
    'exclude'    => '' //  ID to exlude or ..
), $attr));
 

теперь, как я уже сказал, вопрос немного расплывчатый относительно того, чего вы пытаетесь достичь, например, где и как вы устанавливаете параметры exlude / inlcude внутри самого короткого кода
Как — [галерея включает в себя =»23,39,45″] / [галерея исключает =»X, Y, Z»] или через подключаемый плагин ? .