Задача довольно простая, и очень часто обсуждается на блогах посвященных WordPress и заработку в интернете. Публикуется она с той же целью что и предыдущая — ссылаться на нее из других статей а не дублировать по десять раз один и тот же текст.
По правилам (или по крайней мере так выглядит красиво) шорткоды создают в файле «functions.php» текущей темы сайта. К примеру, если на сайте используется тема «twentytwelve», мы открываем фай по адресу «/wp-content/themes/twentytwelve/functions.php». Используя поиск, ищем строку «add_shortcode», т.е. место где расположенны наши коды. Отыскав ее, спускаемся под последний созданный шорткод и создаем наш (делается это только ради красоты и эстетики). Или же, спускаемся в самый конец файла и уже там добавляем наш шорткод.
При желании, вы можете разместить свои шорткоды в отдельном файле. Реализовав их в качестве модуля. И подключать в независимости от используемой темы.
Сам же шорткод, имеет следующий вид:
function wp2fl_shortcode($atts, $content, $shortcode) { return 'Hello World!'; } add_shortcode('hello', 'wp2fl_shortcode');
Где:
hello — название шорткода
wp2fl_shortcode — ф-я реализующая логику работы шорткода
WordPress, на вход этой функции передает три параметра:
$atts — массив используемых атрибутов (если такие используются)
$content — содержимое шорткода (т. е. текст указанный между [x]...[/x])
$shortcode — и собственно название самого шорткода.
Дополнительные функции на блоге, это конечно хорошо, типа разные фишки - крутой сайт. Но здесь нельзя перестараться! Всегда нужно помнить о том, что каждая функция делает дополнительные запросы к базе данных, поэтому очень важно знать о том, какой у вас сервер, выдержит или нет.
Даже если хостинг вывозит тягу функций, то может начать тормозить блог (загрузка, прокрутка), а это уже очень сильно влияет на поисковое продвижение - позиции статей в выдаче. Добавляйте функции с умом и разбивайте их равномерно.
WordPress не Drupal, в дефолтной сборке работает побыстрее
Здравствуй, ну да, я использую отдельный файл, в директории плагинов. Можно менять тему, а шорткоды остаются. При желании можно деактивировать.
Приветствую!
Да, это хороший подход. Не нужно потом ни с чем заморачиваться при обновлениях.