Как проверить наличие миниатюры записи и, если файла нет, отобразить другую миниатюру? У меня есть новостной сайт, где каждый год удаляются старые папки, но ссылки на эти изображения остаются в админке. Я использовал код `$thumb = get_the_post_thumbnail( $post->ID, $post_card_thumb_size, array( 'itemprop' => 'image', 'onError' => 'this.src="https://site.ru/wp-content/themes/reboot/placeholder.jpg"' ) );`, но он не работает с lazy-load. Я также попытался использовать код `$featured_img_url = get_the_post_thumbnail_url(get_the_ID(),'full'); if (!file_exists($featured_img_url) { $thumb = '<img src="https://site.ru/wp-content/themes/reboot/placeholder.jpg">'; }`, но это привело к сбою сайта. Как можно решить эту проблему?
Для проверки наличия файла на сервере и замены его другим файлом, вы можете использовать функцию `file_exists()` в PHP. Пример кода: ```php $file_path = '/путь/к/файлу.jpg'; $placeholder_path = '/путь/к/запасному/файлу.jpg'; if (file_exists($file_path)) { // Файл существует, используем его echo '<img src="' . $file_path . '" alt="Изображение">'; } else { // Файл не существует, используем запасное изображение echo '<img src="' . $placeholder_path . '" alt="Изображение">'; } ``` Для проверки наличия миниатюр записи и замены их другими миниатюрами, вы можете использовать ту же функцию `file_exists()`, но с указанием пути к миниатюре. Пример кода: ```php $thumbnail_id = get_post_thumbnail_id($post->ID); $thumbnail_url = wp_get_attachment_url($thumbnail_id); $placeholder_url = 'https://site.ru/wp-content/themes/reboot/placeholder.jpg'; if (file_exists($thumbnail_url)) { // Миниатюра существует, используем ее echo '<img src="' . $thumbnail_url . '" alt="Миниатюра">'; } else { // Миниатюра не существует, используем запасную миниатюру echo '<img src="' . $placeholder_url . '" alt="Миниатюра">'; } ``` Обратите внимание, что для использования функции `file_exists()` вам может понадобиться абсолютный путь к файлу или URL-адресу.
$image[0] = WPP_CORE_URL . 'components/assets/img/placeholder.jpg'; замените на свой путь
Если не указано конкретное изображение, то будет использовано изображение-заполнитель
Если изображение-заполнитель не найдено, то будет проверена опция "wpp_placeholder_image". Если она не заполнена, будет использовано изображение по умолчанию. Если опция заполнена, будет использовано указанное изображение.
Функция "wpp_image_placeholder" возвращает изображение в заданном формате (массив или ссылка) и применяет фильтр "wpp_placeholder_img".
Фильтр "wp_get_attachment_image_src" применяет функцию "wpp_image_placeholder" с приоритетом 10 для получения изображения при загрузке.