Вывод постов по post_id
-
Имеется такой цикл:
do { $post_id = $myrow['post_id']; } while($myrow = mysql_fetch_array($result));Как в ВП сделать вывод постов по post_id? (Как вывести анонсы, картинки и все остальное)
-
Можно использовать get_post() в цикле, но лучше query_posts (
http://codex.wordpress.org/Class_Reference/WP_Query#Post_.26_Page_Parameters ) с параметром
post__in (array) — use post ids. Specify posts to retrieve.
И, разумеется, Цикл для вывода.Не уверен, что понял вопрос. но.. мб нужен get_posts?
какой у меня медленный интернет 🙂
Не могу всеравно понять как выводить с помощью query_posts.
Если у меня идет проверка и выводятся ИД постов, которые мне надо вывести в переменной $post_id.<?php $sizeofPOST = sizeof($_POST); // есть ли данные для запроса? if ($sizeofPOST != 0) // если были переданы данные для запроса, то формируем запрос { // формирование запроса к БД: $zapros = "SELECT post_id FROM wp_postmeta WHERE post_id < 0 "; unset($_POST["Найти!"]); foreach($_POST as $value) { $zapros .= "OR (<code>meta_key</code> LIKE 'ingredients' AND <code>meta_value</code> LIKE '%"; $zapros .= $value . "%') "; } // это вывод запроса к БД: // далее вывод рецептов в цикле: $result = mysql_query($zapros); $myrow = mysql_fetch_array($result); do { $post_id = $myrow['post_id']; query_posts('$post_id'); } while($myrow = mysql_fetch_array($result)); } ?>Как вывести с помощью query_posts хотябы заголовок и анонс, чтобы понять по примеру как она работает.
WHERE post_id < 0
И много там постов с отрицательным ID?
<code>meta_key</code>WTF?
query_posts(‘$post_id’);
Допустим, $post_id — положительное число (хотя с оглядкой на
< 0это еще вопрос). Но что это за формат запроса? Где Вы такое видели? query_posts с get_post() не перепутали?Как вывести с помощью query_posts
А никак. query_posts() только делает выборку. Выводит Цикл. Примеров в Кодексе уйма.
Проблема с переменной в масиве через запятую
Есть определенные ИД записей в переменной $post_id , в переменную $array делаю так, чтобы эти ИД шли через запятую, и с помощью query_posts хочу вывести .
‘post__in’ => array($array) — выводим только записи, которые находятся в $array (например: 3, 300, 454, 123).
$post_id = $myrow['post_id']; $array = implode( $post_id ,','); query_posts (array('posts_per_page' => 7, 'post__in' => array($array)));Но вот когда закидываю на сайт ничего не происходит, когда подставляю вместо $array определенные цыфры ИДшников в ‘post__in’ => array($array) тогда все нормально. В чем может быть проблема?
$array = implode( $post_id ,',');— получаем строку
'post__in' => array($array)и говорим, что это массив.
Красиво.Да, брет какой-то получается:( . думал получится разделить ИД запятыми, так как они $post_id выводит их слитно 123321456
Если я правильно понял, мне нужно как-то добавить ИД постов в массив, чтобы был вид, например,
query_posts (array(‘posts_per_page’ => 7, ‘post__in’ => array(12, 14, 123, 454, 477, 535, 555)));
Только не знаю как сделать ИД постов через запятую.мне нужно как-то добавить ИД постов в массив,
Совершенно верно!
чтобы был вид, например,
query_posts (array(‘posts_per_page’ => 7, ‘post__in’ => array(12, 14, 123, 454, 477, 535, 555)));А тут — мимо 🙁
Так:
query_posts (array('posts_per_page' => 7, 'post__in' => $posts_array));Видимо, Вам придется еще немного поразбираться с php. Как минимум, в части переменных, массивов и литералов. Понять, как говорил профессор Преображенский, «кто на ком стоял«. Ничего архисложного там нет. Желаю удачи!
Тема «Вывод постов по post_id» закрыта для новых ответов.