Файл functions.php

Дата публикации:Август 20, 2010

Последний файл шаблона темы, которого мы пока еще не коснулись, это functions.php. Многим он представляется довольно сложным и запутанным, в результате чего его часто выпускают из рассмотрения. Стоит сразу заметить, что не все темы поддерживают использование файла functions.php, однако те, что поддерживают, обладают повышенными функциональными возможностями. В файле functions.php обычно размещаются функции, вызываемые как при отображении сайта, так и при работе с панелью администратора. Небольшой пример: разместим следующий участок кода в файле functions.php:

<?php
function $hellomate() {
echo 'Hello mate, how are you doing?';
}
?>

Если теперь мы вызовем функцию в каком-либо из файлов темы, то получим на экран текст, содержащийся в echo. Вызов функции проводится следующим образом:

<?php hellomate(); ?>

В виде отдельной функции удобно оформлять те участки кода, которые присутствуют в файлах темы несколько раз. Тем самым код становится компактным и более понятным для восприятия. На основе функций также строятся и страницы пользовательских настроек, которые позволяют посетителю изменять различные параметры сайта, такие как стили шрифтов, цветовые палитры и т.д. Мы еще вернемся к ним в дальнейшем.

Изменение ширины изображений

При помощи файла functions.php можно изменять значения крупного размера для загружаемых изображений. Делается это следующим образом:

$content_width = 580;

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

Вставка рекламных элементов

Рекламные элементы обычно вставляются после записей, заставляя посетителя выполнить какие-либо действия (к примеру, подписаться на RSS). Задать рекламные элементы можно как при помощи файлов шаблона темы, так и при помощи functions.php.

Допустим, мы хотим увеличить количество RSS-подписчиков сайта. С этой целью определим блок div с классом promotion — в этом блоке разместим заголовок h4, призывающий посетителей следить за обновлениями ресурса.

div.promotion { background: #eee; border: 1px solid #bbb; padding: 10px; }
div.promotion h4 { color: #f00; font-size: 14px; margin: 0 0 5px 0; padding: 0; }
div.promotion p { font-size: 12px; color: #444; margin-bottom: 0; }

Следующий участок кода нужно будет разместить в конце каждой записи:

<div class="promotion">
<h4>Never miss a beat!</h4>
<p>Our smashing <a href="http://notesblog.com/feed/">RSS feed</a> keeps you up-to-date!</p>
</div> 

Как это осуществить без кардинальной переработки всего шаблона? Очень просто! Воспользоваться файлом functions.php. Добавим в него следующий код:

function Promotion($content) {
if(!is_feed() &amp;&amp; !is_home()) {
$content.= '<div>';
$content.= '<h4>Never miss a beat!</h4>';
$content.= '<p>Our smashing <a href="http://notesblog.com/feed/">RSS feed</a> keeps
you up-to-date!</p>';
$content.= '</div>';
}
return $content;
}
add_filter ('the_content', 'Promotion');

Функция создает переменную под названием Promotion, в которой будет храниться необходимый код для добавления после каждой записи. Add_filter позволяет вставить этот код сразу после тега шаблона the_content.

Наличие определенного набора функций позволяет значительно облегчить управление сайтом; на сегодняшний день подавляющее большинство тем поддерживают файл functions.php.

Поделиться

10 комментариев

  1. Спасибо очень полезный пост как раз занимаюсь изучением php

    • Architect Of Ruin says:

      Пожалуйста, заглядывайте к нам еще, тут много статей! Узнаете много нового.

  2. Диана says:

    Помогите, пожалуйста!!! Не могу вставить шорткод [wpuf_addpost] (устанавливаю плагин Плагин WP User Frontend) в functions.php
    Как правильно это сделать, все время выдает ошибку

  3. Диана says:

    да, спасибо
    но как вставить шорткод на страницу?
    у меня не получается(((

    • Дмитрий Алёшин says:

      Просто вставить шорткод и все. Поместить его в редактор и сохранить страницу.

  4. Диана says:

    В редактор в какое место?
    совсем туплю, я очень начинающий пользователь WP, помогите, пожалуйста, застряла на целый день сегодня на этой теме

    Захожу Внешний вид Редактор там какой шаблон?

    • Дмитрий Алёшин says:

      Страницы — Создать новую. Называете ее New Post. В тело статьи вставляете [wpuf_addpost].
      Создаете страницу под названием Edit и в нее вставляете [wpuf_edit]
      Создаете страницу Profile и в нее вставляете [wpuf_editprofile]
      Создаете страницу Dashboard и в нее вставляете [wpuf_dashboard]
      Включаете опцию Edit Page, которая находится во вкладке Others на странице настроек плагина.
      В принципе, все. Остальное уже настраивается дополнительно.

  5. Дмитрий Алёшин says:

    Этот плагин просто достаточно сложный для новичка. У него много настроек и надо в каждой разбираться.

  6. Диана says:

    Спасибо!!! Да,я же поняла…)))

Оставить комментарий

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

Получать новые комментарии по электронной почте. Вы можете подписаться без комментирования.

Предыдущая запись:

Следующая запись: