✅ Новости WEB и WordPress, темы, плагины. Здесь мы делимся советами и лучшими решениями для веб-сайтов.

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

7

Я только что создал две сводные страницы для двух своих блогов: 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 (где причина).

Кроме того, лайки в Facebook учитываются и также включаются в скобки. Для этого вам нужно будет создать еще одну таблицу с парой ключей для идентификатора статьи и числа лайков. Вам нужно будет настроить crontab, который запускается, возможно, один раз в час, чтобы обновлять количество лайков в Facebook (или других социальных сетях) для каждого сообщения. Об этом будет рассказано в другом отдельном уроке.

Источник записи: helloacm.com

Этот веб-сайт использует файлы cookie для улучшения вашего опыта. Мы предполагаем, что вы согласны с этим, но вы можете отказаться, если хотите. Принимаю Подробнее