Если Вы не знакомы с SQL запросами, то рекомендуем посетить раздел нашего сайта, где собраны "учебные статьи о SQL запросах" к базе данных.
Для того, чтобы получить все названия и тексты публикаций из базы WordPress, используйте следующий запрос:
SELECT ID, post_title, post_content FROM wp_posts WHERE post_status='publish' AND post_type='post' ORDER BY ID ASC;
Как видно из запроса, возвращаться будут столбцы:
- ID - номер записи
- post_title - название публикации
- post_content - текст публикации
Помимо получения публикации, может возникнуть необходимость получить изображение к новости. Для решения этой задачи есть нетривиальное решение, потому что необходимо объединить в одном запросе сделать выборку из двух таблиц (wp_postmeta и wp_options):
SELECT concat((SELECT option_value FROM wp_options WHERE option_name ='siteurl' LIMIT 1),'/wp-content/uploads/',childmeta.meta_value) AS 'PIC'
FROM wp_postmeta childmeta
INNER JOIN wp_postmeta parentmeta ON (childmeta.post_id=parentmeta.meta_value)
WHERE parentmeta.meta_key='_thumbnail_id' AND childmeta.meta_key = '_wp_attached_file'
AND parentmeta.post_id = 'id' LIMIT 1;
В последней строчке запроса стоит 'id'. Вместо этой надписи надо поставить цифру - это id публикации из таблицы "wp_posts", полученный в предыдущем запросе. В конце запроса стоит ограничение на вывод: "LIMIT 1".
Потому что картинка к публикации может быть одна. Нет смысла нагружать базу больше необходимого.
Чтобы узнать больше об объединении таблиц при SQL запросе, читайте статью "Объединение таблиц при запросе (JOIN) в SQL". Там разобран механизм объединения таблиц и приведены примеры с "JOIN".