✅ WEB і WordPress новини, теми, плагіни. Тут ми ділимося порадами і кращими рішеннями для сайтів.

Підручник з теми WordPress для початківців – Частина 5: Доступ до інформації про дописи

29

Цей урок підручника з тематики WordPress для початківців розповідатиме про те, як ми можемо отримати доступ до такої інформації, як посилання, заголовок тощо, і вивести її з кожної публікації всередині циклу публікації. Ми робимо це за допомогою шаблонних тегів. У процесі ми також додамо шаблони єдиного перегляду до нашої теми.

На попередньому кроці ми додали цикл повідомлення, який включає the_post()функцію. Ця функція встановлює глобальні змінні та гарантує, що ми можемо використовувати прості та інтуїтивно зрозумілі виклики функцій, які називаються тегами шаблонів, поки ми перебуваємо всередині whileциклу.

Найпоширеніші шаблонні теги для використання в циклі публікацій

Це список найпоширеніших шаблонних тегів, які ви хотіли б використовувати для доступу до інформації про публікацію:

  • the_title()повторює назву публікації.
  • the_permalink()виводить постійне посилання/URL публікації.
  • the_content()виводить вміст публікації (з редактора)
  • the_excerpt()повторює уривок допису. Якщо поле уривка порожнє, це відтворить перші 55 слів із вмісту публікації разом із «…»
  • the_ID()виводить ідентифікатор публікації.
  • the_category()повторює всі пов’язані категорії.
  • the_tags()виводить усі пов’язані теги.
  • the_date()повторює дату публікації публікації.
  • the_time()виводить час публікації публікації.
  • the_author()повторює відображуване ім’я автора публікації
  • the_post_thumbnail()виводить пропоноване зображення допису. Пізніше в цьому підручнику ми дізнаємося, як додати підтримку для обраних мініатюр.

Є ще багато. Якщо ви зацікавлені, перегляньте документацію WordPress Codex про всі теги дописів. Подивіться також за межі заголовка «теги публікацій», щоб дізнатися більше – вони трохи розкидані на цій сторінці.

Давайте почнемо впровадження деяких із цих тегів у наш index.php. Я також додам дуже простий HTML, щоб краще форматувати вивід. Я закликаю вас додати свій власний HTML! Додайте div, span, розділи, заголовки тощо з будь-якими класами, які забажаєте.

Конкретизація циклу в index.php

Усередині циклу в нашому index.phpЯ хотів би додати посилання, яке веде на постійне посилання публікації. Усередині посилання я хотів би повторити заголовок публікації. Потім я хотів би повторити уривок публікації та її категорії.

<?php get_header(); ?>
<?php 
if (have_posts()) {
    while (have_posts()): the_post();
        <article <?php post_class(); ?>>
            <h2>
                <a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a>
            </h2>
            <?php the_excerpt(); ?>
            <?php the_category(); ?>
        </article>
    endwhile;
    the_posts_pagination();
} else {
    ?><p>No posts, sorry.</p><?php
}
?>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Наведений вище код робить:

  • Рядок №5 додає HTML- <article>тег із викликом, post_class()який генерує корисні класи публікацій – як body_class()ми використовували в попередньому кроці.
  • У рядках №6-8 ми додаємо <h2>тег для заголовка з посиланням, яке веде на постійне посилання публікації (єдиний перегляд).
  • Рядок №9 перегукується з уривком публікації.
  • А в рядку №10 ми повторюємо категорії публікації. Оскільки я не передаю жодних аргументів цьому виклику, за замовчуванням він використовує <ul>список.

Це призводить до наступного результату під час оновлення першої сторінки:

Підручник з теми WordPress для початківців – Частина 5: Доступ до інформації про дописи

Ми кудись йдемо! Я рекомендую вам переглянути документацію для кожної функції тегів, які параметри вони приймають. Ви можете трохи змінити результат! І вирішуйте самі, які шаблонні теги використовувати.

Спробуйте натиснути посилання на публікацію, і ви перейдете на сторінку цієї публікації. Тепер ви бачите, що в циклі показано лише одну публікацію. Однак, оскільки наразі ми маємо лише один шаблон index.php, єдиний перегляд також використовує цей шаблон. Тому єдиний погляд не має великого сенсу. Нам не потрібно, щоб він посилався на себе, і ми хочемо бачити повний вміст публікації! Давайте виправимо це, створивши другий шаблон у нашій темі.

Створення єдиних шаблонів перегляду

Якщо ви пам’ятаєте, у першому уроці посібника з теми WordPress для початківців ми розглядали ієрархію шаблонів? Коли ми знаходимося на одній публікації чи сторінці, WordPress шукає single.phpпублікації та page.phpсторінки. Якщо один із них не знайдено, WordPress повертається до того, до singular.phpякого надається спільний доступ, незалежно від типу публікації. Однак теми зазвичай застосовуються single.phpчерез page.phpвідмінності між публікаціями та сторінками. Сторінки не мають категорій і тегів, і оскільки сторінки зазвичай використовуються для статичного вмісту, вони зазвичай не відображають ні дати публікації, ні коментарів. Однак це повністю залежить від вас.

Ми створимо single.phpі page.phpдля нашої теми. Почнемо спочатку з дописів.

Шаблон однієї публікації

У папці вашої теми створіть копію index.phpта перейменуйте її на single.php. У single.phpньому ми видалимо постійне посилання (яке посилається на себе) і замінимо уривок на повний вміст публікації. І, нарешті, тут не потрібна навігація по архіву.

<?php get_header(); ?>
<?php 
if (have_posts()) {
    while (have_posts()): the_post();
        <article <?php post_class(); ?>>
            <h2><php the_title(); ?></h2>
            <?php the_content(); ?>
            <?php the_category(); ?>
        </article>
    endwhile;
} else {
    ?><p>No posts, sorry.</p><?php
}
?>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Додамо ще трохи корисної інформації; наприклад, дата публікації та ім’я автора. Знову ж таки, я закликаю вас додати HTML-теги, щоб створити набагато кращу структуру HTML.

<?php get_header(); ?>
<?php 
if (have_posts()) {
    while (have_posts()): the_post();
        <article <?php post_class(); ?>>
            <h2><php the_title(); ?></h2>
            <?php the_content(); ?>
            <?php the_category(); ?>
            <p>Posted: <?php the_date(); ?> at <?php the_time(); ?></p>
            <p>Author: <?php the_author(); ?></p>
        </article>
    endwhile;
} else {
    ?><p>No posts, sorry.</p><?php
}
?>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

Функції the_time()та the_date()відображатимуть дату й час у форматі, який ви визначили в панелі адміністратора > Налаштування. Однак ви можете змінити це, надавши інший формат дати як параметр для цих методів.

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

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

Підручник з теми WordPress для початківців – Частина 5: Доступ до інформації про дописи

Ось як зараз для мене виглядає один пост. Чудово! Давайте створимо односторінковий шаблон.

Односторінковий шаблон

Зробіть копію свого single.phpта перейменуйте його на page.php. Все, що я зробив, page.phpце видалив усе, що не стосується сторінок. Відтворення категорій для сторінок не працюватиме, я також видалив дату, час і автора. Ось що ми отримуємо page.php:

<?php get_header(); ?>
<?php 
if (have_posts()) {
    while (have_posts()): the_post();
        <article <?php post_class(); ?>>
            <h2><php the_title(); ?></h2>
            <?php the_content(); ?>
        </article>
    endwhile;
} else {
    ?><p>No posts, sorry.</p><?php
}
?>
<?php get_sidebar(); ?>
<?php get_footer(); ?>

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

На наступному кроці ми трохи відійдемо від шаблонів і перейдемо більше до програмування тем WordPress.

Документація щодо використаних методів

Джерело запису: awhitepixel.com

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