• Решено dvatri

    (@dvatri)


    Помогите решить следующую задачу:

    Хочу научиться сортировать посты в зависимости от значения в одной из таблиц БД, привязанного к ID поста. Ситуация такая: есть, например, 10 постов, за каждый из которых проголосовало какое-то количество человек. По запросу к БД можно получить количество голосов к каждой конкретной записи. Можно ли отсортировать посты по этому значению (кол-ву голосов)?

    Ну, например, заставив каким-то образом произвольное поле (custom field) поста при выводе брать свое значение в БД? Возможно, заставить все посты вообще брать в одно из произвольных полей значение из БД по определенному запросу.

    Заранее спасибо!

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Atrax

    (@atrax)

    Ethical engineer

    http://codex.wordpress.org/Template_Tags/query_posts
    Там описана сортировка по дополнительным полям.

    Автор dvatri

    (@dvatri)

    Отсортировать по доп. полю труда не составит. Вопрос в том, как это поле заставить брать значение из БД.

    Atrax

    (@atrax)

    Ethical engineer

    Вы имеете в виду ВНЕШНЮЮ базу?

    Автор dvatri

    (@dvatri)

    Не, БД внутренняя, вордпрессовская. Просто как заставить произвольное поле брать значение из БД, а не вводить его вручную.

    Т.е. в базе данных WP есть таблица, где каждому ID поста соответсвует определенное значение переменной (например, кол-во голосов за пост). Как сделать так, чтобы для возможности сортировки, произвольное поле записи бралось из этой таблицы в БД (кол-во голосов). Можно ли куда-нибудь вставить php запрос, который будет это значение брать из БД. В поле произвольного поля админки или в какой-нибудь php-файлик движка?

    Atrax

    (@atrax)

    Ethical engineer

    Можно в function.php текущей темы вставить «синхронизатор», который выполняет set_meta для этих полей. А дальше — как раз query_posts.

    Автор dvatri

    (@dvatri)

    О! По-моему то, что надо! Если не затруднит — напишите, пожалуйста подробнее, как set_meta прописать правильно. В какое место и т.д.

    Спасибо!

    Автор dvatri

    (@dvatri)

    А функцию add_post_meta добавить нельзя куда-нибудь?

    Atrax

    (@atrax)

    Ethical engineer

    Автор dvatri

    (@dvatri)

    Спасибо!

    Автор dvatri

    (@dvatri)

    Не, ничего не выходит у меня. Как добавить эти функции в functions.php?

    Автор dvatri

    (@dvatri)

    У меня в произвольном поле вместо значения нужного стоит «Object»

    Автор dvatri

    (@dvatri)

    Не, все отлично, разобрался! Еще раз спасибо!

Просмотр 12 ответов — с 1 по 12 (всего 12)
  • Тема «Сортировка постов по значению из БД» закрыта для новых ответов.