1. Загружено в пост 2-5 фото.
Нужно, чтоб выводилось только первая.
Есть функция которая будет вытаскивать первые изображения из каждой заметки, и возвращать их URL.
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //Определяем изображение по умолчанию
$first_img = "/images/default.jpg";
}
return $first_img;
}
Что сделать, чтоб она работала сразу, без вставки
<?php echo catch_that_image() ?>
в код цикла
2. Как автоматом удалять все gif , особенно если у них h или w=1
1) Можно воспользоваться фильтром:
но тогда картинка будет всегда в конце статьи/страницы.
2) нужно менять регулярное выражение, чтобы оно искало не все картинки, а с определенным атрибутом src и с проверкой атрибутов height и width. Я в них не очень силен, но гуглить нужно в эту сторону.