@jenya7771

Sql запрос для получения постов, категорий и тегов относящихся к ним?

Здравствуйте, мне нужно перенести посты из сайта на WP версии 4.9.8, на другой, с другой структурой БД. Для этого нужно получить все статьи с категориями и тегами.
Подскажите, каким запросом можно вытащить посты, спасибо.
  • Вопрос задан
  • 1147 просмотров
Решения вопроса 1
azerphoenix
@azerphoenix
Java Software Engineer
Вот, разные SQL запросы... адаптируйте их под свои задачи:

SELECT wp_posts.ID, wp_posts.post_title, wp_terms.name, wp_postmeta.meta_key, wp_postmeta.meta_value
FROM wp_posts
JOIN wp_postmeta ON wp_posts.ID = wp_postmeta.post_id
JOIN wp_term_relationships ON wp_posts.ID = wp_term_relationships.object_id
JOIN wp_terms ON wp_term_relationships.term_taxonomy_id = wp_terms.term_id
JOIN wp_term_taxonomy ON wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id
WHERE wp_posts.post_status = 'publish' AND wp_posts.post_type='post';


SELECT *
FROM wp_posts
JOIN wp_postmeta ON wp_posts.ID = wp_postmeta.post_id
JOIN wp_term_relationships ON wp_posts.ID = wp_term_relationships.object_id
JOIN wp_terms ON wp_term_relationships.term_taxonomy_id = wp_terms.term_id
JOIN wp_term_taxonomy ON wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id
WHERE wp_posts.post_status = 'publish' AND wp_posts.post_type='post';
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
kores
@kores
Помог ответ? Отметь решением!
Посты хранятся в таблице **_posts, с условием, что post_type=post.
** - вместо этого используйте свой префикс, который был указан при установке.

Таким образом, вы можете вытащить все посты с условиями:

SELECT * FROM `wp_posts` WHERE post_type=`post` AND post_status=`publish` WHERE id IN (***тут условия, которые нужны категории или метки (зависит от Вашей структуры)***)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы