Довільні поля WordPress (WP) відображаються в різних формах і розмірах. Деякі включають прапорці та списки. Інші можуть поставлятися із засобом вибору дати. Є й такі, які приймають тільки певні символи, наприклад, числа. Як і більшість функцій WP, додають їх до повідомлень і сторінок через плагін або вручну без плагіна довільних полів WordPress. В англомовній літературі цей термін має назву «користувальницькі поля».
Про платформі WordPress
WordPress (WP) – це найкраща платформа з відкритим вихідним кодом для швидкого створення блогів. Його популярність і сила – це співтовариство Custom Fields, яке брало участь в інтенсивному розвитку проекту і займало лідируючі позиції в CMS протягом останніх 15 років.
В даний час WP є найпопулярнішою CMS в світі, яка підтримує близько 30% веб-сайтів. Ця статистика стосується лише публічних сайтів. Існує також велика кількість безучетных сайтів, наприклад, приватні сайти, кількість яких ніхто точно не знає. Результат багаторічної історії розвитку бренду – це можливості для багатомільйонних користувачів з базою в 45 000 плагінів і порядком 6000 тим, офіційно опублікованих на сайті WordPress.
Ще однією причиною, чому WP цікавить власників новинних сайтів, портфоліо бронювання готелів або електронної комерції, є довільні поля WordPress і архітектура метаданих.
В WordPress існують основні типи об’єктів: «піст», «користувач», «коментар», «таксономія» та «медіа». Вони містять тільки необхідні поля, надані WP для їх опису. Наприклад, заголовок продукту або повідомлення, ім’я користувача і назву категорії.
Довільні метадані
В БД все це виражається у відповідних таблицях для об’єктів і довільних полів WordPress. Можна інтерпретувати метадані як довільні (мета), прикріплені до первинних даних. Вони надають додаткову інформацію і уточнюють їх. Вони не містять саму “мету”.
Наприклад, якщо потрібно зобразити об’єкт «пост про товар», потрібна додаткова інформація про ціну, кількість і якість. Таким чином, замість додавання стовпців у таблицю дані додаткової інформації будуть збережені в метадані, а потім пов’язані з Post. Він стає продуктом, коли використовуються метадані. Якщо користувач більше не захоче, щоб це був “продукт”, можна зв’язати його з довільними полями WordPress, наприклад, з ціною і простором, тому Post стає Room без зміни його фундаментальних даних.
Ця надзвичайно цікава і гнучка функція є основою для зростання WordPress. Для того, щоб користувачі могли додавати, видаляти чи редагувати, повинен бути інструмент для маніпулювання ними – це довільні поля, функція, яка допомагає створювати форми для взаємодії з метаданими (МД).
Настроювані поля
Якщо інтерфейс (UI) довільних полів відсутня, єдиний спосіб додавати, видаляти або редагувати МД – це використовувати код з допомогою функцій, що надаються платформою. Фактично поняття МД рідко згадується, тому що це технічний термін, прихований в WP. І коли справа доходить до настроюваних полів, зазвичай, розуміють, що вони включають як інтерфейс, так і МД.
Настроювані поля створюють форми, щоб користувач міг додавати необхідні метадані. У розділі МД основними типами об’єктів є Post, User, Comments, Media та інші. Всі ці об’єкти мають власні настроювані поля, які можна побачити при редагуванні.
Звичайно є багато типів даних, які потрібно додати до кожного об’єкту. Це може бути короткий текст, зображення або URL. Перед тим, як вивести довільні поля WordPress, користувачі повинні вибрати тип полів.
Варіанти налаштування
Для того, щоб додати такі настроювані поля в WordPress, існує три варіанти:
- використовувати стандартні функції WP за замовчуванням;
- використовувати ручну настройку функції WP;
- використовувати плагіни.
Для деяких простих полів, таких як текст, достатньо використовувати стандартні функції WordPress. Якщо потрібно застосувати більш складні поля, можна закодувати їх. Це не занадто складно для таких полів, як зображення і редактор, але це складно для таких, як відносини.
Користувач може створювати веб-сайти у різних галузях за допомогою довільних полів. Наприклад:
- подорожі – додають описові поля адреси, рейтингу, ціни, путівника;
- готель – додають такі поля, як ціна, доступність, місткість, послуги;
- електронна комерція – поля про ціну, обсяг, кількість.
В WP можна сказати, що там, де є типи записів, існують користувальницькі поля.
МД і настроювані поля надали WP величезну можливість налаштування для задоволення потреб 30% веб-сайтів у світі у всіх галузях. Коли користувач працює з WP, навіть якщо створює найпростіший блог, він не може ігнорувати довільні поля.
З іншого боку, вони є причиною багатьох суперечок. Деякі люди кажуть, що це робить запит повільніше, а інші – що він не підходить для масштабування. Щоб дізнатися правду, немає іншого способу, окрім як самому випробувати і дізнатися більше про побудову WordPress і запиті даних з БД довільних полів.
Установка полів через плагін
Існує безліч типів плагінів, які дозволяють дуже швидко додавати настроювані поля в WP, фаворитом є додаткові довільні поля Custom Fields.
Багатьом подобається цей плагін з-за простоти використання. На додаток до простоти цей плагін включає в себе фільтр довільних полів WordPress. Настроювані поля створюються ним в одну мить, в кілька кліків миші.
Для початку потрібно буде встановити і активувати плагін. Відкривають панель управління WP і натискають «Плагіни»> «Додати новий». Потім знаходять «Додаткові» в поле пошуку і натисніть «Встановити зараз». Чекають появи на кнопку «Активувати» і натискають «Встановити».
Як тільки плагін буде запущений, можна побачити нову опцію Custom Fields на панелі управління. При натисканні на цю кнопку відкриється сторінка груп довільних полів, які на момент початку робіт повинні бути порожніми. Натискають кнопку «Додати новий» вгорі сторінки.
Плагін допоможе створити нову групу, яка містить кілька настроюваних полів WP.
Використовують плагін Advanced Custom Fields для створення поля, але не для його відображення на сайті. За замовчуванням, поле буде відображатися тільки на панелі моніторингу, а ваша інформація буде зберігатися в базі даних. Якщо потрібно, щоб метадані було видно відвідувачам сайту, необхідно відредагувати файли для теми.
Ручне налаштування
Можна додати поля WP вручну відредагувати тему для їх відображення. Найскладнішим є налаштування теми для відображення метаданих, які вводять в ці поля.
Алгоритм налаштування.
Редагування тим циклу
Для редагування тим необхідно отримати доступ до файлів сайту за допомогою протоколу передачі файлів (FTP) або Filezilla, якщо ще не налаштований FTP-клієнт.
Після того, як FTP налаштований, переходять в каталог public_html/wp-content/themes. При відкритті знаходять папку, яка відповідає активній темі на сайті.
Вбудована функція користувальницьких даних
Для того, щоб додати нове повідомлення або відредагувати його, натискають «Параметри екрану».
Використання вбудованої функції.
Самостійна обробка настроюваного поля з користувальницького інтерфейсу для збереження даних набагато складніше.
Часто використовувані функції показують список полів у зовнішньому інтерфейсі в упорядкованому списку, надають настроюване значення полів у масиві ключ/значення, повертають масив ключів всіх полів, масив значень настроюваного поля $key.
Висновок настроюваного списку
Якщо потрібно, щоб висновок довільних полів WordPress відображався відразу після заголовка публікації в архіві, так і на окремій сторінці, додають the_meta() функцію в файл template-params/post/content.php.
Настроювані поля – це спосіб для WP зберігати довільні додаткові дані для контенту, такі як ім’я автора, дата публікації книги. Щоб зробити настроювані поля гнучкими і сумісними з різними видами даних, WP розробляє мета-таблиці (мета-пост, мета-термін, мета-користувач і мета-коментар) у формі “ключ-значення”.
У відповідності з цим кожне настроюване поле зберігається як один рядок в БД. Такий підхід дозволяє розробникам зберігати необмежену кількість інформації незалежно від їх структури. Але недоліком є швидке поширення БД. Тому що кількість настроюваних полів зазвичай дуже велике. Проект WordPress має всі рішення для оптимізації зберігання настроюваних полів у БД, щоб підвищити продуктивність сайту. Існують деякі недоліки використання структури бази даних WordPress за замовчуванням для мета-таблиць.
Між тим, структура БД буде перешкоджати створенню складних запитів. Таким чином, щоб вирішити цю проблему для довільних полів, потрібно змінити спосіб зберігання. Як вже зазначалося, настроювані поля не рекомендуються для пошуку або запиту, хоча на практиці іноді доводиться виконувати такі операції. Таким чином, оптимізація сховища для настроюваних полів повинна бути розділена на дві задачі: оптимізація сховища, використовується тільки для відображення/збереження, а також запит даних.
Користувальницькі таблиці
Щоб повністю вирішити цю проблему, потрібно зберігати дані не так, як WordPress пропонує за замовчуванням, а у вигляді користувальницьких таблиць. За допомогою них можна вказати кількість, тип даних і спосіб збереження.
Така структура даних дуже зрозуміла, але може стати великою проблемою для багатьох розробників WordPress. Щоб спростити роботу для користувачів Meta Box, можна використовувати розширення MB Custom Table, щоб створити таблиці для обробки даних про отримання/збереженні з довільних полів і надання класу кешу для підвищення продуктивності.
Плюси створення таблиць:
- очищають структуру даних;
- виконують запит настроюваних полів і створюють складні запити;
- настроювані поля зберігаються в одному рядку.
Мінуси:
- не використовують вбудовані функції API метаданих WordPress;
- безпека даних;
- реалізують шар кеша, коли дані ростуть самостійно.
Області застосування
У будь-якому випадку інформація, яку додають при використанні поля, може застосовуватися для різних цілей. Однак у більшості з них ці поля використовуються для «метаданих». Наприклад, у пості WP створюють заголовок для опису вмісту, і технічно – це вже метадані.
Інші типи метаданих включають теги повідомлень, мета-опис, категорії сторінок та багато інше, якщо у користувача є щось спільне, все, що WordPress надає для додавання інформації про контент. В деяких випадках потрібно додати метадані, а WP не пропонує поля, призначені для цього. Для цього потрібно буде додавати настроювані поля WordPress і пов’язувати їх з контентом.
З правильними інструментами і покроковим помічником можна створювати практично всі види полів WP. Прикладом є додавання зоряної рейтингової системи до повідомлень. Створюючи настроювані поля для зіркової рейтингової системи, можна переміщати пости по популярності або просити відвідувачів залишати відгуки, хоча це передбачає виконання більш складних налаштувань.
Важливо відзначити, що настроюються довільні поля WordPress в запису і настроювані типи записів – це не одне і те ж. Налаштовувана запис WordPress – це формат, специфічний для типу вмісту, наприклад, це огляди постів або сторінки продуктів, які повинні розділяти посади за категоріями. Але, зрозуміло, на одній і тій же сторінці або повідомленні зазвичай є поле і тип настроюваного повідомлення, і ці два елементи можуть застосовуватися ізольовано.
Оскільки дані ростуть, продуктивність і масштабованість стають великими проблемами для всіх веб-сайтів. Важливо подумати про оптимізацію сховища для довільних полів у базі даних. З допомогою прийомів, описаних вище, можна заощадити місце для зберігання БД і в той же час підвищити продуктивність запиту.