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

Як створити сторінку архівів (резюме) для всіх публікацій/сторінок WordPress за допомогою PHP?

4

Я щойно створив дві підсумкові сторінки для своїх двох блогів: https://helloacm.com/archives-of-pagesposts/ і http://www.codingforspeed.com/archives-of-pagesposts/.

На обох сторінках усі статті (включаючи сторінки) відсортовані за місяцями. Кількість коментарів до кожної публікації буде підрахована та надрукована після заголовка публікації в дужках.

Це може бути добре для переліку всіх статей/сторінок для користувачів і для пошукових систем, тому ця сторінка також служить як карта сайту.

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

Отже, як ми цього досягнемо? Перш за все, у WordPress вам знадобляться деякі плагіни, щоб мати можливість включати PHP-код у публікації/сторінки. Перейдіть до панелі керування wordpress після входу та перейдіть до плагінів і «Додати новий». Знайдіть «Включити PHP», і ви знайдете багато варіантів.

Потім скопіюйте та вставте наступний код PHP в один файл PHP у кореневому каталозі теми.

Алгоритм тут полягає в групуванні за роком-місяцем у SQL і повторенні кожного місяця, щоб отримати всі публікації/сторінки за цей місяць. Використовуйте глобальну змінну $wpdb для виконання оператора SQL. Використовуйте get_var для операторів SQL з однією змінною, наприклад select count(1), і використовуйте get_results для кількох рядків.

Змініть назву таблиці wordpress wp_posts, якщо префікс не wp_. Однак ви можете використовувати $wpdb->posts, щоб отримати назву таблиці дописів, що є кращим методом. Відфільтруйте дописи/сторінки, відповідно змінивши відповідні оператори SQL (where cause).

Крім того, враховуються лайки у Facebook, які також включені в дужки. Для цього вам потрібно буде створити ще одну таблицю, яка містить пару ключів для ідентифікатора статті та номера оцінок «подобається». Вам потрібно буде налаштувати crontab, який запускається, можливо, раз на годину, щоб оновлювати лайки у Facebook (або інших соціальних мережах) для кожної публікації. Це буде розглянуто в іншому окремому посібнику.

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

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