Как проверить, есть ли в записи хотя бы одно изображение?

Иногда возникает необходимость проверить, имеется ли в записи хотя бы одно изображение. В зависимости от этого можно выполнить тот или иной код, внедрить какое-либо усовершенствование своего блога, словом — добавить ресурсу большую привлекательность и повысить удобство использования. Как осуществить указанную проверку? Очень просто. С помощью следующего сниппета:


<?php
$content = $post->post_content;
$searchimages = '~<img [^>]* />~';
  
preg_match_all( $searchimages, $content, $pics );
 
$iNumberOfPics = count($pics[0]);
 
if ( $iNumberOfPics > 0 ) {
     
}
 
?>

Давайте разберемся, что на практике делает этот код. С помощью строки

preg_match_all( $searchimages, $content, $pics );

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

Далее мы смотрим, есть ли у нас хотя бы одно изображение в этой переменной:

$iNumberOfPics = count($pics[0]);

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

if ( $iNumberOfPics > 0 ) {
     
}

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

По метариалам wpforce.com.

Блог про WordPress
Добавить комментарий

Получать новые комментарии по электронной почте.