Работа с Visual Composer VC_Single_Image

21 мар. 2016 г., 22:56:09
Просмотры: 22.7K
Голосов: 2

Я работаю с сайтом на WordPress, который содержит следующий шорткод,

[vc_single_image image="7004" css_animation="right-to-left" border_color="grey" img_link_target="_self" img_size="300px"]

Мне нужно повторить этот шорткод несколько раз, но я не могу понять, откуда берется четырехзначное число, ссылающееся на изображение.

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

Что это за число и как я могу добавить другое изображение в этот шорткод?

3
Комментарии

Похоже, что это attachment_id.

Nathan Powell Nathan Powell
21 мар. 2016 г. 23:11:42

Ах, спасибо. Есть ли где-то, где я могу посмотреть, чтобы получить его? Или мне нужно вызывать функцию?

wuno wuno
22 мар. 2016 г. 00:19:37

Сторонние темы/плагины не по теме, но так как я недавно сам разбирался с этим, могу дать вам несколько подсказок.

birgire birgire
22 мар. 2016 г. 01:04:55
Все ответы на вопрос 2
0

Нелегко проследить код, стоящий за [vc_single_image], потому что для начала он использует extract, что не рекомендуется в WordPress или PHP в целом.

Значение атрибута image очищается от нечисловых значений в переменную $img_id.

В вашей настройке происходит вызов wpb_getImageBySize( array( 'attach_id' => $img_id, ... ), который, судя по всему, является обёрткой, включающей:

wp_get_attachment_image_src( $attach_id, 'large' );

Таким образом, атрибут image — это ID вложения изображения (целое число), как и упомянул Натан Пауэлл.

Если включить редактор бэкенда для Visual Composer:

1

с кодом, который вы опубликовали, то мы должны увидеть примерно такой вид:

2

Нажмите на зелёную ручку, и мы получим настройки одиночного изображения:

3

Здесь легко выбрать вложение изображения напрямую из медиатеки.

Если мы не хотим использовать визуальную настройку, можно получить ID вложения изображения из различных ссылок в Медиатеке. Например, при редактировании вложения URL выглядит так:

/wp-admin/post.php?post=7004&action=edit

или при просмотре деталей вложения URL такой:

/wp-admin/upload.php?item=7004

Надеюсь, это поможет!

22 мар. 2016 г. 00:53:31
0

Быстрое решение

Для тех, кто столкнулся с той же проблемой, я нашел быстрое решение для определения ID вложения.

  1. Откройте меню "Медиафайлы"
  2. Выберите медиафайл, ID которого нужно узнать
  3. Посмотрите на URL, в моем случае http://localhost/.../wp-admin/upload.php?item=1826
  4. Просто используйте целое число из параметра item в вашем vc_single_image

    спасибо @birgire за объяснение

    [vc_single_image image="1826" img_size="full" alignment="center"]

11 мар. 2020 г. 18:08:53