Всім привіт! Сьогодні ми обговоримо сортування статей у WordPress по алфавіту – як не наступити на підводний камінь, дописуючи додатковий код у шаблоні WordPress. Це досить цікава тема, я практично цілий день затратив на вирішення одного-єдиного нюансу, якого – читай далі.
Бувають моменти, коли потрібно пересортувати статті на своєму WordPress-сайті в іншому порядку. Ось мені вже двічі траплявся випадок, коли була потреба зробити вивід статей у категоріях (всюди, окрім головної сторінки) в алфавітному порядку. Про це ми сьогодні й поговоримо.
Не зовсім правильне сортування статей у WordPress
Найпростіший спосіб сортування статей у WordPress – внести додатковий запис у файл налаштувань шаблона functions.php. Вносити потрібно наступне:
Цей запис допоможе двигунцю посортувати статті у всіх категоріях по алфавіту у наростаючому порядку (від А до Я). Про це свідчить запис у 4-му рядку: post_title ASC.
Якщо ж ти бажаєш змінити порядок сортування у якійсь одній вибраній категорії, то просто видозмінюємо код, поданий вище, додавши у 2-му рядку назву чи id категорії:
У чому ж нюанс?
А нюанс полягає в тому, що не приведи Господи тобі використати віджет останніх записів, як ти відчуєш усю проблему на власній шкурі. Так, ця зміна у файлі functions.php розповсюджується на абсолютно всі категорії у цілому двигунці (якщо ти, звичайно, не вказував/ла однієї конкретної категорії, а поміняв/ла порядок сортування у всіх категоріях відразу). Тобто у віджеті "Останні записи", коли ти перебуваєш на сторінці категорії, тепер відображатимуться не останні по даті публікації, а перші по алфавіту, як і всі статті в основному полі сайту. Що означає лиш одне: тепер віджет абсолютно не виконує своєї функції, а показує просто кілька статей перших по алфавіту…
Як це виправити? Першим ділом ідемо у файл functions.php і повертаємо там усе як було 😉 А тепер шукаємо файл, який відповідає за вивід категорій. Якщо ти призабув/ла, який саме файл це має бути, то можеш ще раз повернутися до статті про оформлення категорій – там докладно розписано, що до чого.
У мене останній раз за вивід категорії відповідав файл archive.php, тобто шаблон не особливо закручений, все досить просто. Шукаємо у цьому файлі вивід циклу статей. Приблизно отакий запис:
Тут же можемо його видаляти, а замість нього ставити наступний запис:
Що ми зробили в даному випадку? Ми оголосили зміну сортування статей безпосередньо перед виводом їх у блок із контентом, а не глобально для цілого сайту, як у попередньому прикладі. В даному випадку окрім даного блоку із статтями більше ніщо на сайті на даний запис реагувати не буде, чого нам і потрібно було добитися.
Хоча, якщо ти не користуєшся віджетом "Останні записи", то тобі цілком підійде і перший варіант, він навіть трохи легший, як на мене.
На цьому все. Якщо мій пост тобі допоміг, не забудь подякувати репостом 😉 Всього хорошого!
Прокоментувати
На сайті відображається лише твоє ім'я та коментар. Електронна пошта зберігається виключно для зв'язку з тобою за потреби та в жодному разі не передається стороннім особам.