|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.12.2014, 16:33 | #1 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Как в Wordpress SQL запросом SELECT вывести все посты категории?
В старых версиях базы было поле category, а сейчас в таблицах wp_term_relationships, wp_term_taxonomy
нужно разбираться в отношениях и строить сложный запрос может кто уже писал такой код? |
13.12.2014, 18:02 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А SDK на этот счет нет? Спецификаций или хотя бы пояснений в доработках?
I'm learning to live...
|
13.12.2014, 20:20 | #3 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Вот так вот в новой базе вроде как отношения.
Я знаю term_id в таблице wp_terms - по нему нужно получить все ID в таблице wp_post Задача простая, особенно если учитывать что в старом моем скрипте в term_id были в таблице wp_post А теперь разработчики добавили кучу таблиц посредников. И код надо переписывать. |
13.12.2014, 20:30 | #4 |
Старожил
Регистрация: 03.01.2014
Сообщений: 2,870
|
Таблица posts связана с таблицей terms последовательно через таблицы term_relationships и term_taxonomy.
Поэтому, для получения всех записей в рубрике нужен inner join из 4х таблиц. |
14.12.2014, 17:31 | #5 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Хорошо. попытаюсь понять логику.
Код:
|
14.12.2014, 17:43 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Скорее так:
Код:
I'm learning to live...
|
14.12.2014, 17:50 | #7 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Цитата:
Код:
Код:
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
14.12.2014, 18:00 | #8 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Так ребята. смотрите. я понял в чем косяк и многие на нем уже пролетают. так как вот такой код я взял из сети и он не работал. потому что не отработано еще соотношение. и у меня самостоятельно не отрабатывалось так как в голове логически до сих пор нет понятия как же все таки Join работает.
Код:
на больших числах это соотношение разбегается и ранее рабочий казалось бы код не работает, потому что не хватает еще одного соотношения term_taxonomy_id не равно term_id в таблице terms - отсюда много логических ошибок заклывалось в код. И потому прежде чем делать любые запросы нужно получается по term_id получить term_taxonomy_id - по мне так это селектом проще. как join делать - нет пока понимания в голове Вот такой вот дополнительный Select понадобился. Код:
Код:
Код:
Для понимания логики базы данных wordpress обратите внимание как храняться slug - их может быть несколько с разным типом. Вот отсюда и идет расхождение в цифрах. прикрепил в аттаче. Обязательно ставьте нужный AND вот так у меня. так как ошибок не будет только в самой простой базе. где не повторяются slug Код:
Последний раз редактировалось Stilet; 14.12.2014 в 19:59. |
14.12.2014, 18:25 | #9 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Дык по-моему эти 2 селекта эквивалентны моему и стилетовскому запросам с join'ами.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. Последний раз редактировалось Alex11223; 14.12.2014 в 18:28. |
14.12.2014, 18:38 | #10 | |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Цитата:
Хотя может и раньше задачи были много простыми и решались не только через SQL. Сейчас я решил во что бы то не стало расширить командный запас SQL. потому обязательно буду разбираться в синтаксисе и логикоприменении SQL команд. Далее буду наверное отчитываться о результатах. Думаю заинтересовал кого-то. А кому-то будет полезно в будущем. Мне так точно нужна шпаргалка на будущее. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как вывести последние 5 записей из категории Wordpress? | Edwin2014 | WordPress и другие CMS | 0 | 26.01.2014 13:04 |
Не выводятся посты в wordpress | veter48 | WordPress и другие CMS | 1 | 12.10.2012 00:53 |
как вывести категории и записи к ним | АлександрСмирнов | PHP | 2 | 13.08.2012 17:26 |
Новые посты на сайте(Wordpress) | writeln('abcd') | WordPress и другие CMS | 3 | 13.05.2012 21:49 |
MS SQL ADO Как вывести через запрос Select из двух баз данных по совпадающему id? | SovereignSun | SQL, базы данных | 2 | 17.01.2012 17:59 |