WordPress растет, развивается, и постоянно получает новые функции. Таким вот образом, начиная с версии 2.9 стало возможным внедрять объекты со сторонних сайтов непосредственно в содержимое записи или страницы. Внедрить можно как видеоролики, изображения, так и другое содержимое. Начиная с версии WordPress 3.4, в записи и страницы также можно вставлять твиты. Поддерживается внедрение объектов с таких сайтов как Youtube, Vimeo, Twitter, Flickr, SmugMug и др. (полный список ниже). И все это без помощи плагинов.
Заинтересовались?
Тогда обо всем этом подробнее.
Внедрение на страницы записей объектов с других сайтов возможно осуществить двумя способами:
- С использованием шорткода
[
embed
]
- Без использования шорткода
Результат в обоих случаях будет почти одинаковый.
Чтобы происходило автоматическое внедрение объектов по ссылке без использования шорткода [
embed
]
, необходимо включить опцию в настройках WordPress
«Параметры» > «Медиафайлы» > «Объекты» > «Автоматическое внедрение»
Здесь же можно настроить и максимально допустимые размеры внедряемых объектов.
Без этой галочки, ваш сайт не сможет запросить у удаленного сайта код, для вставки объекта на страницу, и ваша ссылка отобразится как простой текст.
Например, вот так:
Казалось бы, следует включить эту опцию и забыть об использовании шорткода.
Но я бы не советовал так делать по двум причинам:
- При использовании шорткода
[
embed
]
есть возможность задать максимальные размеры внедряемого объекта (именно этого, на остальные будут распространяться значения, указанные в настройках).
Пример:
[
embed width="400" height="250"
]
http://www.youtube.com/watch?v=QeaopAsKURU
[
/embed
]
Width и Height задают максимально возможные значения. При этом пропорции видео и изображений остаются оригинальными - При включенной опции «Автоматическое внедрение» у вас может не получиться вставить ссылку как простой текст на страницу, при необходимости сделать это. Ссылка будет автоматически внедрять удаленный объект
Если удаленный объект не будет найден по ссылке, то отобразится активная ссылка на объект.
Функция внедрения удаленных объектов в WordPress основана на технологии oEmbed. Что эта технология позволяет делать, думаю, вы поняли. А суть ее заключается в том, что один сайт (ваш) запрашивает у другого сайта(удаленный) HTML-код для вставки объекта на страницу.
С каких сайтов можно внедрять удаленные объекты?
В целях безопасности, в WordPress имеется белый список разрешенных сайтов:
- YouTube
- Vimeo
- DailyMotion
- blip.tv
- Flickr (как видео, так и изображения)
- Viddler
- Hulu
- Qik
- Revision3
- Scribd
- Photobucket
- PollDaddy
- Google Video
- WordPress.tv (на текущий момент только видео типа VideoPress)
- SmugMug (WordPress 3.0+)
- FunnyOrDie.com (WordPress 3.0+)
- Twitter (WordPress 3.4+)
Но существует возможность добавить и другие сайты, поддерживающие технологию oEmbed. Это делается с помощью функции wp_oembed_add_provider()
.
Пример:
Первый аргумент определяет структуру хранения объектов на сайте, второй — адрес URL oEmbed провайдера.
Данная функция может быть вызвана из посредством плагина либо из файла function.php
темы.
Вставка видео из YouTube в запись WordPress
Код:
http://www.youtube.com/watch?v=QeaopAsKURU
Результат:
Код:
[
embed width="400" height="250"
]
http://www.youtube.com/watch?v=QeaopAsKURU
[
/embed
]
Результат:
Вставка изображений из Flickr в запись WordPress
Код:
http://www.flickr.com/photos/remak/7790260534/
Результат:
Код:
[
embed width="400" height="250"
]
http://www.flickr.com/photos/remak/7790260534/
[
/embed
]
Результат:
Вставка твитов в запись WordPress
Код:
http://twitter.com/PopulyarnoCom/status/243607765019394048
Результат:
Новое в Photoshop CS6 для веб-дизайнера bit.ly/Sm0Iq9
— PopulyarnoCom (@PopulyarnoCom) сентября 6, 2012
При добавлении твита на страницу будут доступны и все дополнительные ссылки, позволяющие ответить на сообщение, ретвитнуть, добавить сообщение в избранное и подписаться на ленту.
И в заключении предлагаю почитать о том, как организовать эффектный просмотр изображений на сайте с помощью плагинов Simple Lightbox или Lightbox Plus.
В WP 3.х (а, возможно, 3.5.х) заметил, что из меню «Медиафайлы» пропала всякая настройка внедрения. И, похоже, ранние настройки перестали учитываться. Например, на одном блоге я задавал ширину внедряемых видео «420», потому что такая ширина контентной колонки, но теперь все внедрённые видео стали размером «600». Есть ли мысли по поводу, как вернуть в админку настройки внедрения?