WordPress, как получить первую картинку из поста?

Дата: 3 апреля /

Столкнулся с задачей вывести в вордпресе первую картинку из галереи поста, в результате курения буржуйских форумов и официального кодекса написал данную функцию. Кроме вывода, функция позволят сделать ресайз картинки.


<?

#Первый параметр $postId - ид поста из которого нужно вытащить картинку

#Второй параметр - размер, можно использовать дефолтные, которые задаются в настройках (thumbnail, medium, large, full) или произвольный array(100,100)

function getPostImg($postId, $thumbSize) 
{
    $arImg =&get_children('post_type=attachment&post_mime_type=image&post_parent='.$postId);

    if($arImg)
    {
        $arTmp = array_keys($arImg);
        $firstImage = $arTmp[0];
        $imgSrc = wp_get_attachment_image_src($firstImage, $thumbSize);
    }
      
  return $imgSrc[0]; 
}

#Пример использования

?>

<img src="<?=getPostImg($post->ID, 'medium')?>" />

Статьи по теме:

  1. WordPress, хлебные крошки без использования плагина
  2. Как в PHP отсортировать многомерный массив как таблицу?

Рубрика: WordPress

Comments Один комментарий

 

  1. chaos_id:

    Спасибо большое, помогло!
    Но не совсем( почему-то некоторые выводимые картинки не являются первыми в галерее(
    заменил $firstImage = $arTmp[0]; на $firstImage = $arTmp[1]; и все стало с точностью до наоборот( там где выводились первые пикчи — выводятся последние(
    порядок сортировки внутри галереи никак не влияет на результат(
    может есть какая-то хитрость?

Оставить комментарий