Розширюємо wordpress користувача функціями

Просто тому що ви можете, не означає, що вам слід це робити. Як раніше вже обговорювалося, є багато способів розширити функціональність вордпресс, особливо, якщо ви комфортно себе відчуваєте длубаючись в коді.

Є безліч ситуацій, коли ваші зусилля дизайнера і розробника краще втілюються в зручному файлі компоненті шаблону functions.php Призначення цього файлу - дати можливість розширити функціонал на основі шаблону. Кожен шаблон має цей файл для вставки будь-якої кількості php функцій і скриптів. Цей код обробляється, коли тема активна, тим самим розширюючи функціонал саме активної в даний момент теми.

Модулі проти functions.php

І плагіни, і функції теми (скрипти, що містяться в functions.php) можуть розширювати функціонал вордпресс, але є деякі відмінності між ними, про які ми вже говорили раніше:

  • Зона дії - плагіни, зазвичай, працюють на всьому сайті, функції працюють тільки коли тема активна.
  • Оновлення - плагіни, зазвичай, оновлюються періодично. Функції теми, як правило, не оновлюються, особливо ті, які ми самі додали вручну.
  • Адаменко - плагіни завжди показуються в адмін-панелі. Функції теми можуть і не проявляти себе в адмінці, в залежності від їх функції та скриптів.

Коли ж використовуємо можливості functions.php? Якщо функції прив'язані до шаблону, якщо це призначені для користувача функції шаблону, якщо це маленькі і прості скрипти і функції.

Приклади корисних функцій тим

Якщо повернуться в далекі часи Wordpress 1.5, то розробникам навіть і не снилися можливості специфічних можливостей шаблонів. Всі зміни робилися безпосередньо в файлах ядра вордпресс, то, що ви зараз, швидше за все, вже й не будете робити. Зараз в більшості випадків functions.php дозволяє зробити будь-які речі без зміни файлів вордпресс.

Як відключити повідомлення про оновлення

В адмінці вордпресс нагадує про доступні оновлення ядра і плагінів. Нагадування оновлення плагінів показується тільки на сторінці плагінів, а ось повідомлення поновлення ядра показується на кожній сторінці. Давайте відключимо, додавши в functions.php цей код

Після розміщення вищевказаного коду в functions.php, залишиться тільки вставити в потрібне місце шаблону виклик цієї функції

Шорткоди вордпресс - це посилання на часто використовуваний контент, такий як посилання, картинки, заголовки. Наприклад, замість того, щоб писати повне посилання на головну сторінку сайту, цей шорткод буде виглядати як [home]. І всюди, де він розміщений в тексті, він буде замінений на заслання. Шорткоди можуть бути дуже значні і виконувати різноманітні завдання.

Як і очікується, функціонал шорткодов буде додаватися в functions.php. У цьому прикладі функція для перетворення [home] на заслання на головну сторінку сайту буде виглядати так

Переміщення плагінів в functions.php

Цей файл настільки крутий, що може замінити собою всі плагіни. Це хороший спосіб ізолювати функціональність плагінів всередині спеціального шаблону. За замовчуванням плагіни впливають на всі теми, але якщо включити їх в functions.php, то при зміні шаблону плагіни працювати не будуть. Найлегше перемістити ті плагіни, які складаються з одного файлу - потрібно просто скопіювати вміст цього файлу в functions.php і видалити. Решта плагіни можуть зажадати додаткових маневрів для коректної роботи і перенесення, але в теорії - це можливо.

Створення плагінів з функцій

Перемістити плагін в functions.php так само легко, як і створити плагін з призначеної для користувача функції. Як і в попередньому випадку, потрібно просто скопіювати і вставити призначену для користувача функцію в новий .php файл і зберегти.

Але перед заливкою в папку плагінів потрібно вказати спеціальний заголовок з необхідною інформацією. Ось приклад правильного заголовка, який можна використовувати як шаблон для створення своїх плагінів:

Ці прості приклади показують тільки вершину айсберга і лише познайомили з широкими можливостями, які можна втілити в functions.php Але крім плагінів і функцій є ще способи розширити можливості Вордпресс. Давайте продовжувати далі вивчення.