• Главная
  • Карта сайта
Не найдено

3 способи створити шаблон сторінки

  1. Спосіб 1: шаблон сторінки через файл з довільним назвою і підключенням його в адмін-панелі (класичний...
  2. Спосіб 2: шаблон сторінки через файл з конкретною назвою (ієрархія файлів шаблону)
  3. Спосіб 3: шаблон сторінки через фільтр "template_include" (коддінг)

У цій статті я розповім про способи створення шаблонів для постійних сторінок WordPress. Кожен спосіб несе в собі плюси і мінуси. Але перш ніж почати, коротко про те, що таке сторінки і чим вони відрізняються від записів.

У WordPress можна створювати сторінки (page) і записи (post). Відрізняються вони тим, що записи: потрапляють в стрічку на головній сторінці; для записів указуються категорії; записи не можуть бути деревоподібними, а сторінки: використовуються для такого вмісту як "Про мене", "Контакти", "Карта сайту"; не мають категорій, а мають деревоподібну структуру. Записи зазвичай призначені для хронологічної інформації (за часом додавання), а сторінки для деревовидної структури не залежною від часу. Для прикладу, ця стаття опублікована як "запис" в рубриці "Кодекс", а посилання в меню шапки ведуть на сторінки: функції .

Сторінки схожі на записи - вони розташовані в одній таблиці бази даних і дані у них майже однакові: заголовок, текст, додаткові поля і т.д. І те й інше - це записи, але різних типів: сторінки деревовидні і організовуються шляхом створення батьківських і дочірніх сторінок, а записи об'єднуються рубриками та мітками. У WordPress можна створювати додаткові типи записів деревовидні чи ні.

У цій статті я розповім про способи створення шаблонів для постійних сторінок WordPress

Створення сторінок в WordPress

Часто потрібно створити окремий шаблон сторінки, щоб висновок інформації відрізнявся від решти сторінок. Створюючи шаблон сторінки в WordPress, можна абсолютно змінити сторінку: видалити сайдбар, підвал, шапку, можна змінити сторінку до невпізнання. Наприклад, на цьому сайті так змінюється сторінка на якій виводяться коди файлів WordPress .

Спосіб 1: шаблон сторінки через файл з довільним назвою і підключенням його в адмін-панелі (класичний спосіб)

Це найпоширеніший спосіб створити шаблон сторінки в WordPress. Для цього потрібно створити .php файл, наприклад, tpl_my-page.php в папці теми і на самому початку файлу вписати позначку, що створений файл є шаблоном для сторінок:

<? Php / * Template Name: Мій шаблон сторінки * /?> <! - Тут html / php код шаблону ->

Тепер при створенні сторінки в адмін-панелі в блоці «Властивості сторінки» ми зможемо вибрати "шаблон":

З версії WordPress 4.7. такі шаблони сторінок можна створити для будь-якого типу запису, а не тільки для page. Для цього доповніть коментарі рядком: Template Post Type: post, page, де post, page - це назви типів записів до яких відноситься шаблон.

/ * Template Name: Мій шаблон сторінки Template Post Type: post, page, product * /

Детальніше читайте в окремій статті .

переваги:

  • Створивши один шаблон, ми можемо зручно застосовувати його для різних сторінок. Наприклад, можна створити шаблон без бічної панелі і використовувати його на різних сторінках.

  • Можна отримати тільки записи з зазначеним шаблоном. Наприклад, можна вивести всі сторінки з шаблоном «Послуги» (файл servises.php). Іноді це зручно. Назва файлу шаблону зберігається в метапол _wp_page_template, тому щоб вивести сторінки з вказаним шаблоном потрібно створити запит по метапол (див. WP_Query ).

недоліки:

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

Як це працює:

Коли ви заходите в адмін-панель на сторінку редагування записи деревовидного типу, WordPress переглядає всі файли шаблону на наявність в них рядки:

Template Name: ***

Рядок може розташовуватися де завгодно і як завгодно у файлі.

Всі файли з подібними рядками збираються і виводяться в вибір шаблону в блок "Атрибути сторінки".

При публікації сторінки, в довільне поле _wp_page_template записується назва файлу шаблону або default, якщо шаблон не вказано:

_wp_page_template = default
_wp_page_template = tpl_my-page.php

Далі, коли користувач відвідує сторінку, WordPress перевірять метапол _wp_page_template, якщо шаблон встановлений, то використовується файл шаблону. В іншому випадку пошук шаблону сторінки триває за ієрархією .

меню

Спосіб 2: шаблон сторінки через файл з конкретною назвою (ієрархія файлів шаблону)

Цей спосіб має на увазі створення файлу в папці теми з конкретною назвою: page- {складаючи-сторінки} .php або page- {ID-сторінки} .php. Детальніше дивіться за цим посиланням .

При створенні сторінки їй встановлюється ярлик (складаючи, альтернативна назва). Він використовується в УРЛ сторінки. І його можна змінити:

Зміна складаючи сторінки

Для створення шаблону цим способом, вам потрібно дізнатися складаючи сторінки і створити файл в папці теми. Припустимо, наш складаючи як на зображенні дорівнює contacts, тоді створимо в темі файл page-contacts.php. і заповнимо його потрібним кодом (можна скопіювати вміст з файлу шаблону page.php і відредагувати під себе). Все, тепер при відвідуванні сторінки ми повинні побачити новий шаблон. Аналогічно можна взяти ID (нехай 12) сторінки і створити файл page-12.php.

переваги:

Немає необхідності заходити в адмін-панель і встановлювати файл шаблону. Шаблон починає працювати відразу після створення файлу. Зручно при розробці.

недоліки:

Шаблон створюється тільки для однієї, конкретної сторінки. Залежить від складаючи сторінки, якщо він зміниться шаблон працювати не буде. Якщо використовувати ID, то залежність від складаючи пропадає, але стає незрозуміло в файлу теми, до якої сторінки належить шаблон (якщо кілька шаблонів з ID).

Практично не потрібен при написанні шаблонів, а тим-більше плагінів. Його можна використовувати, коли керуєш свій сайт, в якому складаючи або ID сторінки відомі заздалегідь.

Як це працює:

WordPeress підбирає який файл використовувати в наступному порядку (файли повинні бути в корені теми):

  • {Любое_названіе} .php (коли використовується шаблон сторінки)
  • page- {ярлик_запісі} .php
  • page- {ID_запісі} .php
  • page.php
  • singular.php
  • index.php
меню

Спосіб 3: шаблон сторінки через фільтр "template_include" (коддінг)

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

// фільтр передає змінну $ template - шлях до файлу шаблону. // Змінюючи цей шлях ми змінюємо файл шаблону. add_filter ( 'template_include', 'my_template'); function my_template ($ template) {# аналог другого способу // якщо це сторінка з складаючи portfolio, використовуємо файл шаблону page-portfolio.php // використовуємо умовний тег is_page () if (is_page ( 'portfolio')) {if ($ new_template = locate_template (array ( 'page-portfolio.php'))) return $ new_template; } # Шаблон для групи рубрик // цей приклад буде використовувати файл з папки теми tpl_special-cats.php, // як шаблон для рубрик з ID 9, назвою "Без рубрики" і складаючи "php" if (is_category (array (9, 'Без рубрики', 'php'))) {return get_stylesheet_directory (). '/Tpl_special-cats.php'; } # Шаблон для запису по ID // файл шаблону розташований в папці плагіна /my-plugin/site-template.php global $ post; if ($ post-> ID == 12) {return wp_normalize_path (WP_PLUGIN_DIR). '/My-plugin/site-template.php'; } # Шаблон для сторінок довільного типу "book" // передбачається, що файл шаблону book-tpl.php лежить в папці теми global $ post; if ($ post-> post_type == 'book') {return get_stylesheet_directory (). '/Book-tpl.php'; } Return $ template; }

Такий код потрібно розмістити в файл теми functions.php або в плагін, або підключити якось ще. Як видно з прикладу під час фільтра template_include вже працюють умовні теги, встановлені глобальні змінні: $ wp_query, $ post і т.д.

переваги:

недоліки:

Необхідність писати код і окремо його підключати (наприклад, в functions.php теми).

Як це працює:

Читайте опис фільтра template_include .

Php / * Template Name: Мій шаблон сторінки * /?
Провайдеры:
  • 08.09.2015

    Batyevka.NET предоставляет услуги доступа к сети Интернет на территории Соломенского района г. Киева.Наша миссия —... 
    Читать полностью

  • 08.09.2015
    IPNET

    Компания IPNET — это крупнейший оператор и технологический лидер на рынке телекоммуникаций Киева. Мы предоставляем... 
    Читать полностью

  • 08.09.2015
    Boryspil.Net

    Интернет-провайдер «Boryspil.net» начал свою работу в 2008 году и на данный момент является одним из крупнейших поставщиков... 
    Читать полностью

  • 08.09.2015
    4OKNET

    Наша компания работает в сфере телекоммуникационных услуг, а именно — предоставлении доступа в сеть интернет.Уже... 
    Читать полностью

  • 08.09.2015
    Телегруп

    ДП «Телегруп-Украина» – IT-компания с 15-летним опытом работы на рынке телекоммуникационных услуг, а также официальный... 
    Читать полностью

  • 08.09.2015
    Софтлинк

    Высокая скоростьМы являемся участником Украинского центра обмена трафиком (UA — IX) с включением 10 Гбит / сек... 
    Читать полностью