ilit70

Вывод поста по ID

Recommended Posts

Подскажите пожалуйста как вывести анонс поста на страницу (по ID)? Без плагинов,непосредственно в шаблон страницы. Вот для примера код вывода записей из определенной категории:

<?php

global $post;

$category_id = get_cat_id(17);

$my_query = new WP_Query('cat='. $category_id . '17' . 'offset=' . '&' . 'showposts='. $featured_number .'2');

while ($my_query->have_posts()) : $my_query->the_post(); $do_not_duplicate = $post->ID; $the_post_ids = get_the_ID();

?>

Или <?php $posts = get_posts('orderby=rand&numberposts=2&category=17'); foreach($posts as $post) { ?>

<div class="post-meta">

<h2>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></h2>

<span class="post-date"><?php the_time('F j Y h:i A') ?> | <?php comments_popup_link('Без комментариев', '1 Комментарий', ' Комментарии %'); ?></span>

<?php if ( has_post_thumbnail() ) { ?>

" title="<?php the_title(); ?>"><?php the_post_thumbnail(array(50,50), array('class' => 'alignleft')); ?>

<?php } else { ?>

" title="<?php the_title(); ?>"><img src="<?php echo bloginfo('template_url'); ?>/scripts/timthumb.php?src=<?php echo get_post_image(); ?>&w=50&h=50&zc=1&q=100&a=t" alt="<?php the_title(); ?>" class="alignleft" />

<?php } ?>

<p><?php the_excerpt_feat_cat($excerpt_length=20); ?></p>

<div class="clearfix"></div>

</div>< --END -->

<?php endwhile;?>

Как правильно изменить выделенную часть кода чтобы получить вывод анонса конкретного поста??? Долго мучился..но все время выпадает ошибка!! Помогите пожалуйста!! Есть куча инфы по выводу как вставить вывод последних, случайных и т.д записей из категорий в шаблон страницы,как вставлять галереи .. виджиты.. Но как вставлять одиночные записи и что для этого нужно не нашел, не где..

Share this post


Link to post
Share on other sites

Елки палки... Я эту http://codex.wordpre...%D0%BC/get_post страницу уже наизусть выучил... И эту тоже http://codex.wordpress.org/Function_Reference/query_posts Перевел, распечатал и на стенку повесил!! Перепробовал кучу вариантов, всегда выпадает ошибка... Напишите пожалуйста рабочую строку кода!!! Я уже выть готов .. не могу понять где торможу...

Share this post


Link to post
Share on other sites

У меня всё работает.

<?php
$postId = 66;
$post = get_post($postId);
echo '<h2>'.$post->post_title.'</h2>';
echo '<div>'.$post->post_content.'</div>';
?>

всегда выпадает ошибка...

Если есть ошибка, то в ней сказано в чём причина.

Share this post


Link to post
Share on other sites

Спасибо уважаемая!!! У меня так тоже все работает.... В эти дебри я уже лез!!!! Все оказалось до смешного просто....Карма наверное была такая :facepalmxd:

Было:<?php

global $post;

$category_id = get_cat_id(17);

$my_query = new WP_Query('cat='. $category_id . '17' . 'offset=' . '&' . 'showposts='. $featured_number .'2');

while ($my_query->have_posts()) : $my_query->the_post(); $do_not_duplicate = $post->ID; $the_post_ids = get_the_ID();

?>

Стало: <?php

global $post;

$my_query = new WP_Query('p=[id]');

while ($my_query->have_posts()) : $my_query->the_post(); $do_not_duplicate = $post->ID; $the_post_ids = get_the_ID();

?>

И все.... полностью рабочий блок..

Share this post


Link to post
Share on other sites

Вывожу сокращенный текст поста по рецепту ilit70 в сайдбаре. Под анонсом есть ссылка на страницу поста.

 

Однако, на странице самого поста этот же пост в сайдбаре выводится полностью, а не до тега <!-- more -->

 

Как это побороть?

Share this post


Link to post
Share on other sites

Вывожу сокращенный текст поста по рецепту ilit70 в сайдбаре. Под анонсом есть ссылка на страницу поста.

 

Однако, на странице самого поста этот же пост в сайдбаре выводится полностью, а не до тега <!-- more -->

 

Как это побороть?

 

(должно быть внутри цикла)

global $more;$more = 1;

А после этих всех извращений советую использовать wp_reset_postdata(), иначе можно словить проблем в других местах, т.к. глобальный объект $post будет ссылаться на какую-то фигню в сайдбаре, а не текущий пост.

У меня всё работает.

<?php	$postId = 66;	$post = get_post($postId);	echo '<h2>'.$post->post_title.'</h2>';	echo '<div>'.$post->post_content.'</div>';?>

А можно я позанудствую и скажу, что это плохой вариант, потому что используются данные в сыром виде (не обработанные фильтрами)? :) Если фильтры the_title вы, скорее всего, не заметите, то отвалившееся форматирование (абзацы, переносы строк) в контенте незаметить сложно :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Member Statistics

    46,551
    Total Members
    3,128
    Most Online
    Илья92
    Newest Member
    Илья92
    Joined
  • Recently Browsing   0 members

    No registered users viewing this page.