Flector

Shortcoder

Родная поддержка шорткодов появилась в WordPress версии 2.5, но популярными шорткоды так и не стали. По вполне понятной причине - их использование в WordPress подразумевает хотя бы минимальное знание php, а большинство пользователей WordPress такими знаниями не обладают. Собственно, именно поэтому плагины для создания и использования шорткодов стали довольно популярны среди блогеров. Из десятка просмотренных мной плагинов больше всего мне понравился плагин Shortcoder. Он не лишен некоторых недостатков, но, тем не менее, он мне показался наиболее простым и при этом достаточно мощным для решения практически любой задачи. Что можно легко сделать с его помощью? Например, вставкой одного шорткода можно добавить в вашу запись рекламу от AdSense, Я.Директ, любые JS-скрипты, Flash-содержимое и многое другое. Плагин использует встроенную в WordPress поддержку шорткодов, но при этом вам не нужно знать основ программирования, так как создание и редактирование шорткодов осуществляется в удобном визуальном редакторе.

Скачиваем плагин с его домашней страницы и устанавливаем его:

1. Распаковываем архив.

2. Копируем папку shortcoder в /wp-content/plugins/.

3. Заходим в админку блога на вкладку "Плагины" и активируем плагин.

Как таковых настроек в плагине нет. Вы сразу можете добавить или отредактировать шорткод в "Параметрах\Shortcoder". Чем мне понравился именно этот плагин шорткодов? Тем, что при использовании шорткода можно использовать переменные. Недостаток тут только один: нужно использовать встроенные переменные, так как плагин не дает возможности добавить свои переменные. Однако, все переменные, несмотря на свои названия, могут использоваться как вам угодно, поэтому в вашем распоряжении будет 16 различных переменных, чего более, чем достаточно.

Чтобы вы поняли пользу от использования шорткодов я приведу несколько примеров, от простого к сложному. Начнем с самого банального - сделаем шорткод, вставляющий в запись ссылку на какой-нибудь сайт. Оформим ссылку так, чтобы она не индексировалась поисковыми системами и открывалась в новой вкладке браузера. Зайдите в "Параметры\Shortcoder", в списке "Shortcode Name" выберите любой неиспользуемый шорткод, ниже введите его имя, например "google", а в редакторе введите следующий код:

<noindex>
<a href="http://www.google.ru" rel="nofollow" target="_blank">
<strong>Google.ru</strong></a>
</noindex>

Нажмите кнопку "Update" и после этого шорткод готов к использованию. Если теперь вы вставите в запись блога шорткод:

[sc name="google"]

То он автоматически будет заменен на неиндексируемую ссылку на сайт гугла, открывающуюся в новой вкладке браузера. Это был самый простой пример, не слишком удобный для использования в блоге, так как он выводит ссылку лишь на один сайт, а нам, возможно, надо также оформлять сотни разных ссылок в блоге. Модифицируем этот пример так, чтобы в нужном оформлении выводилась любая указанная нами ссылка. Для этого будем использовать переменную %url%. Добавьте новый шорткод с именем "link", а в редакторе введите:

<noindex>
<a href="%url%" rel="nofollow" target="_blank">%url%</a>
</noindex>

Синтаксис вызова шорткода будет здесь таким:

[sc name="link" url="http://www.google.ru"]

Однако в данном случае анкором ссылки всегда будет текст самой ссылки. Чтобы это поправить чуть-чуть изменим этот шорткод следующим кодом:

<noindex>
<a href="%url%" rel="nofollow" target="_blank">%title%</a>
</noindex>

Вызывать шорткод теперь надо, указывая и ссылку и анкор ссылки:

[sc name="google" url="http://www.google.ru" title="Google.ru"]

Сразу хочу заметить, что текст анкора передается через переменную %title%. Как я уже говорил, переменные можно использовать любым способом, независимо от их имени. То есть с тем же результатом можно было передавать ссылку в переменной %title%, а анкор ссылки в переменной %url%.

Данные примеры немного надуманны - в конце концов, иногда проще вставить ссылку в нужном оформлении сразу, чем вспоминать синтаксис необходимого шорткода. Рассмотрим случаи, когда использование шорткодов более оправданно. Например, вставим ролик с сайта RuTube.ru. Создайте шорткод с именем "rutube", введите следующий код:

<OBJECT width="470" height="353">
<PARAM name="movie" value="http://video.rutube.ru/%src%"></PARAM>
<PARAM name="wmode" value="window"></PARAM>
<PARAM name="allowFullScreen" value="true"></PARAM>
<EMBED src="http://video.rutube.ru/%src%" type="application/x-shockwave-flash" wmode="window" width="470" height="353" allowFullScreen="true"></EMBED>
</OBJECT>

Чтобы теперь встроить  в запись блога ролик с сайта RuTube.ru достаточно использовать шорткод:

[sc name="rutube" src="a4c5a421feabd67cdfb2d3d90e845f4e"]

Где переменная %src% указывает на ID ролика. Подобным образом можно добавить шорткоды для любых сайтов видео-хостинга от YouTube до Яндекс.Видео. Таким простым способом плагин Shortcoder может вам заменить любой плагин для встраивания видео-роликов в записи блога.

Аналогичным способом можно встраивать в записи блога рекламу AdSense, Flash-содержимое и т.д. Для AdSense достаточно передать в переменной шорткода ID вашего аккаунта. Flash-содержимое и JS-скрипты вообще можно вызвать шорткодами без переменных. Я так навскидку могу назвать как минимум 5 различных плагинов, которые я рассматривал в данном блоге и которые может заменить лишь один только плагин Shortcoder.

Почти на любом блоге встречаются блоки информации, которые повторяются время от времени и которые можно вызывать через шорткод. На моем собственном опыте: в каждой статье о плагине внизу у меня идет блок информации о плагине. Когда я возился с созданием этого блога, я додумался заранее оформить этот блок с нужным идентификатором в css, поэтому в любом момент правкой css стилей шаблона я могу изменить внешний вид этого блока сразу во всех статьях сайта. Однако я не додумался использовать шорткоды и теперь не имею возможности, скажем, поменять местами строчки в этом блоке. Для этого мне необходимо править каждую статью о плагине вручную, а это, как вы понимаете, совсем не просто. А вот через шорткод поменять содержимое блока можно было бы за 1 минуту. Вот смотрите пример, скажем я создаю шорткод со следующим кодом:

<p id="podval">
Автор плагина: <noindex><a href="%url%" rel="nofollow" target="_blank"><strong>%title%</strong></a> </noindex> <br />
Страница плагина: <noindex><a href="%misc1%" rel="nofollow" target="_blank">%misc1%</a></noindex> <br />
Рассматриваемая версия: <strong>%misc2%</strong> от <strong>%misc3%</strong> <br />
Совместимость с версией WordPress: <strong>%id%</strong> и выше.
</p>

Шорткод вызываю так:

[sc name="plugin" url="http://w-shadow.com/blog/2007/08/05/broken-link-checker-for-wordpress/" title="Janis Elsts" misc1="http://wordpress.org/extend/plugins/broken-link-checker/" misc2="0.9.7.1" misc3="10.10.2010" id="3.0"]

И в итоге получаю нынешнее оформление:

Shortcoder

Теперь чтобы поменять строчки в этом блоке на всем сайте мне достаточно изменить код шорткода на:

<p id="podval2">
Рассматриваемая версия: <strong>%misc2%</strong> от <strong>%misc3%</strong>  <br />
Совместимость с версией WordPress: <strong>%id%</strong> и выше. <br />
Страница плагина: <noindex><a href="%misc1%" rel="nofollow" target="_blank">%misc1%</a></noindex>  <br />  
Автор плагина: <noindex><a href="%url%" rel="nofollow" target="_blank"><strong>%title%</strong></a> </noindex>
</p>

И в результате блок информации изменится на всем сайте и будет таким:

Shortcoder

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

Кроме пользовательских шорткодов в плагине есть возможность использовать встроенные в него шорткоды, вот их список:

1. Закодированный Email.

[email]email@example.com[/email]

2. Короткий урл "Tiny url".

[su url="http://www.wordpressplugins.ru/"]Короткий урл[/su]

3. Встроенный RSS-ридер.

[rss feed="http://feeds.feedburner.com/wordpresspluginsru" num="5"]

Этот шорткод должен выводить указанное число заголовков из RSS-ленты. Он так и делает, но портит при этом русский текст. Так что пользоваться данным шорткодом пока нельзя.

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

Плагин отличный, но недостатки в нем тоже есть: число шорткодов ограничено 20-ю и мне не совсем понятно зачем нужно это ограничение; нет возможности использовать свои собственные переменные; частично не работают встроенные шорткоды. Это, конечно, не особо критично, но все-таки хотелось бы идеального плагина.

 

Автор плагина: Aakash Chakravarthy
Страница плагина: http://wordpress.org/extend/plugins/shortcoder/
Скачать русский плагин: shortcoder.zip
Рассматриваемая версия: 2.3 от 09.08.2010
Совместимость с версией WordPress: 2.5 и выше.

Понравился пост? Подпишись на обновления по Обновления блога по RSSRSS или Обновления блога на TwitterTwitter !

Бюро переводов на Марксистской

Бюро переводов на Марксистской в субботу.

www.buroimpression.ru

Комментарии (всего 20 комментариев)

Написать комментарий

(обязательно)

(обязательно, не публикуется)

Для вставки кода используйте кнопку "Код", по умолчанию используется синтаксис подсветки языка "php", вы можете поменять его на любой другой поддерживаемый GeSHi язык, например "javascript", "css", "html4strict", "sql" и тд. Используйте предпросмотр!
 


Подписаться на уведомления без комментирования.