Про атачменты, миниатюры и мета поля

В плагине для ускорения работы с изображениями, загрузками и мета полями используется All Inclusive который я выделил в отдельный плагин описание метода.
Для того, чтобы задействовать эту функцию достаточно включить опцию в настройках плагина “Применять шаблоны постов”, устанавливать All Inclusive не нужно он уже включен в ads-wordpress в виде функции фильтра ads_addImgMeta. Для сравнения WP функция the_post_thumbnail для получения 1 миниатюры создает 2 SQL запроса то есть если на странице 10 записей это 10*2 = 20 sql !? Мой же метод дает всего 2 дополнительных SQL но помимо картинок добавляет все мета поля для всех записей.
Настоятельно рекомендую пользоваться моим методом это сэкономит вам и время и ресурсы сервера.
Итак как ним воспользоваться привожу примеры.
Во первых советую в теле главного цикла советую распечатать переменную $post сразу после старта главного цикла:

вставляем заменив пре на pre 🙂

Итак думаю всем хорошо видно, что мета поля попадают в массив $post->meta , а атачменты $post->files
Вот например, чтобы проверить и распечатать номер телефона можно сделать так

Проверить и вывести миниатюру для первой картинки со ссылкой на полную картинку если она есть, если нет вывести заглушку.

Проверить есть ли какая-нибудь картинка в объявлении и вывести ее миниатюру со ссылкой на само объявление:

Можно комбинировать со стандартным выводом миниатюр the_post_thumbnail

Если загруженный файл не картинка а архив или что-то еще пользуем параметр guid или лучше attachment_url. Для примера обработаем все загруженные файлы и выведем для картинок миниатюры а для других файлов ссылки на закачку

В этом примере мы сначала с помощью регулярного выражения определяем тип файла по полю post_mime_type если он начинается с image/ значит это картинка и мы печатаем миниатюру если нет выводим ссылку используя параметр attachment_url.

Наверное здесь самым сложным будет не запутаться где массив а где свойства объекта еще раз повторю
Доступ к мета полям записи $post->meta[‘имя поля’]
К файлам
$post->files[0]->attachment_url прямая ссылка
$post->files[0]->guid первый файл параметр guid тоже самое прямая ссылка

$post->files[1]->thumbnail второй файл миниатюра
$post->files[2]->medium третий файл средняя миниатюра
$post->files[3]->full третий файл полная картинка

Начиная с версии 3.0.17 добавил создание иконок для файлов типа архивы, exe, документы и т.д.
Иконки находятся в любом из полей thumbnail | medium | full везде одинаковые.
можно немного переписать предыдущий пример добавить вывод иконок вместо текста

И еще напомню есть функция ads_gallery

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url=""> [php]…[/php] [html]…[/html] [css]…[/css] [text]…[/text] [code]…[/code]

  • sdfsdfsdf
  • sdfsdfsdfsdf
  • sdfsdfsdfs
  • sdfsdfsdf
  • sdfsdfsdfsdfs
  • sdfsdfsdfs
  • sdfsdfsdf
  • sdfsdfsdfsdfs