Универсальная лента анонсов для WP без темы через get_posts()
WordPress давно превратился из блоговой платформы в некий Framework со своим удобным, мощным и гибким API.
С помощью всего одной функции get_posts() можно в любом месте нашего сайта реализовать ленту анонсов записей. Мой рабочий пример выглядит так:
<style>/* тут немного стилей */</style>
require_once('/wp-config.php'); // Подключаем API WP, укажите свой правильный путь!!!
$arr = get_posts(array('posts_per_page' => 100)); // Получаем массив анонсов записей, в данном случае 100 последних
$text = ''; // Создаём временную перемеренную, куда будем писать текст
foreach ($arr as $item) { // через цикл формируем ленту анонсов
$text .= '<div><small>'.date('d.m.Y H:i', strtotime($item->post_date)).' | '.get_the_author_meta('display_name',$item->post_author).'</small><br>';
$text .= '<a href="'.$item->guid.'">'.$item->post_title.'</a></div>';
}
echo $text; // выводим сформированную ленты
Вот и всё, всего 10 строчек кода. Размещаем его в любом файле, например news.php в корневом каталоге.
Разумеется можно сделать вместо $text .= сразу вывод через echo, но разумнее выводить разом. Учитывая, что кому-то может потребоваться перед выводом сделать ещё какие-то манипуляции с текстом.
Вы можете подключить файлы или код своих стилей и скриптов стандартными способами. Данную страницу можно использовать в iframe на других сайтах, так и подгружать через ajax.
Вот так это выглядит у меня на одном из агрегаторов новостей
https://g63.ru/news.php
Подробнее о функции и её параметрах читайте в документации: английская или русская