Вывод картинки в меню к каждому посту
-
Кто знает, какой плуг поможет вывести в виджете «Последние записи» картинку к каждому из постов?
-
Но я выбрала Simple Post Thumbnails, потому что он выводит произвольную тумбинашку, а YD Recent Posts Widget — первую из поста. Это не всегда удобно.
Ладно, по Вашему настоянию я вернулась к использованию плагина YD Recent Posts Widget. Вот какие у меня с ним проблемы:
1. Он выдает все посты списком, независимо от того, стоит ли в настройках галочка Display as a ul / li list
2. Зачем-то выводит не только заголовок поста, но и кусок первого абзаца.
Где это все исправлять, я не имею понятия — перерыла все настройки и код, а результата никакого.
Поэтому последний раз взываю о помощи и надеюсь, что на этом мы уже закроем эту тему. Меня уже от этих тумбинашек тошнит 🙁Но у Simple Post Thumbnails нет совсем простых (одной левой кнопкой) способов вывода в сайдбаре, он предназначен для вывода картинок в Цикле, а YD Recent Posts Widget — сам по себе виджет, который легко ставится в сайдбар.
Для человека, знакомого хотя бы с синтаксисом php, нет проблем сделать вывод постов с картинками от Simple Post Thumbnails в сайдбаре. Примеров кода валом по форумам, а добавить туда одну строчку от плагина — совсем плевое дело. Проблема в том, что у незнакомого и не желающего знакомиться с php могут возникнуть (и постоянно возникают!) проблемы даже со вставкой готового, заведомо рабочего кода.
Меня уже от этих тумбинашек тошнит 🙁
Так бросьте. Зачем себя мучить?
Ну не хотите помогать, так и скажите. Все, тема закрыта.
Мало с кем возятся так, как мы здесь с вами 🙂 но, согласитесь, «пятилетнему ребенку» лучше не разбирать свои игрушки, чтобы они работали. Даже если они работают не так, как хочется.
Мы делимся собственным опытом с теми, кому интересно понять и разобраться. А выполнять вашу работу за вас любой профессионал будет только за деньги и это правильно. Не обижайтесь.
Так о чем и речь! Я спрашиваю, как это работает. Почему, вставив строку <?php p75GetThumbnail($post->ID, 200, 150); ?>
в index.php, я не получаю результата? Я прекрасно понимаю, что это элементарное действие, и прочитала уже всю документацию, но это не работает. Я всего лишь прошу объяснить, почему не работает. Мне не нужно, чтобы все тут прибежали и начали делать мой сайт. Я просто не могу понять, почему нет результата.
Сейчас я ковыряю плагин Peer Categories, и у него то же принцип действия. Мне нужно вставить в нужное место код <?php peer_categories(‘,’); ?>. Я вставляла его и в index.php, где есть цикл loop, и в sidebar.php, и в category-template.php, widgets.php. Выводит, но не так, как мне надо.
И я сижу уже неделю и ковыряюсь сама с собой, вычитываю кучу англоязычной инфы и тыкаю эти коды куда только могу! Потому что куча умных опытных дядек вместо того, чтобы один раз взять и объяснить мне тупой что к чему, решила, что проще написать мне тут целую страницу слов про мою бездарность. Это форум поддержки или рассуждения на тему тупости новичков вообще?
Мне же достаточно один раз разобраться, и я отвалю от вас ото всех! Я вижу, что тут один принцип действия и что все элементарно, но мне не хватает какой-то детали, которую вы могли бы мне подсказать.Плагины, рассчитанные только на работу внутри цикла (Simple Post Thumbnails, Peer Categories) можно использовать в качестве виджета, если создать в боковой колонке отдельный цикл — например, с помощью функции
get_posts()
: http://codex.wordpress.org/Template_Tags/get_postsЭто форум поддержки для тех, кто спрашивает. И «рассуждения» для тех, кто офтопит. Информации в одной только этой теме более чем достаточно. Непонятно — задайте уточняющий вопрос, а не бросайтесь в обсуждение необходимости форума поддержки для хакеров. Мы тоже люди т реагируем на выпады соотвественно.
Давайте уже ближе к теме…
Я специально установил виджет
http://wordpress.org/extend/plugins/yd-recent-posts-widget/
Если в записи есть картинка, то он ее показывает.
Первую, да… но зато простым помещением в сайдбар.А вот
http://wordpress.org/extend/plugins/simple-post-thumbnails/
действительно позволяет выбрать произвольную картинку из записи, но
он предназначен не для сайдбара, а для того, чтобы в главном списке показывать одну из картинок рядом с короткой версией записи.Поэтому вам и говорят о том, что нужно вписать ее внутри Цикла (это ключевое понятие WP) или создать в боковой колонке отдельный Цикл.
Что именно из сказанного вам непонятно? Все можно просто и понятно объяснить, если не скатываться в эмоциональные разборки.
Я думаю, придется разобраться с Simple Post Thumbnails, потому что мне потом ставить еще Peer Categories, сделанный по тому же принципу.
Мне непонятно, как создавать в боковой колонке отдельный цикл. Что вообще такое «боковая колонка»? Это sidebar.php?
Как создавать цикл с помощью функции get_posts()? я прочитала документацию в ссылке, но это мне ни о чем не говорит 🙁
Я не знаю, как еще конкретнее спросить. В тех ссылках, что вы мне даете, куча какой-то инфы, но я не знаю, как применить ее конкретно к моему случаю.Смотрите, если делать по порядку. Мне нужно создать в боковой колонке отдельный Цикл. Значит, в документе sidebar.php (все-таки я не знаю, какой документ можно обозвать еще боковой колонкой) я должна как минимум написать:
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?><?php endwhile; else: ?>
<p><?php _e(‘Sorry, no posts matched your criteria.’); ?></p>
<?php endif; ?>
Это будет цикл Loop.
Так?
Куда теперь функцию get_posts()?Да, это и будет ‘The Loop’.
get_posts нужен перед ним.
Все это в sidebar.php, совершенно верно.Внутри цикла вызываете
p75GetThumbnail($post->ID, 200, 150); // Width is 200px, height 150pxНу и, наверное the_header(), чтобы хотя бы заголовки были рядом с картинками. В общем, по аналогии с основным Циклом в index.php
Да, боковая колонка — это
sidebar.php
. Попробуйте так:<?php if ( $posts = get_posts('numberposts=10') ) : ?> <ul> <?php foreach ( $posts as $post ) : ?> <?php $image_url = p75GetThumbnail($post->ID, 200, 150); ?> <li><?php if ( !empty($image_url) ) : ?><img src="<?php echo $image_url; ?>" /><?php endif; ?> <a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li> <?php endforeach; ?> </ul> <?php endif; ?>
Здесь выводятся пиктограммы (если есть) для десяти последних записей.
Смотрите, что получилось:
<?php get_posts(‘arguments’); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<?php p75GetThumbnail($post->ID, 60, 60); ?>«><?php the_title(); ?>
<?php endwhile; else: ?>
<p><?php _e(‘Sorry, no posts matched your criteria.’); ?></p>
<?php endif; ?>При таком варианте выводятся только заголовки постов. А тумбинашки — нет. Скорее всего, это из-за get_posts, потому что я не знаю, как его формировать.
В документах по нему есть такой вариант:
<?php
$args = array(
‘post_type’ => ‘attachment’,
‘numberposts’ => -1,
‘post_status’ => null,
‘post_parent’ => $post->ID
);
$attachments = get_posts($args);
if ($attachments) {
foreach ($attachments as $attachment) {
echo apply_filters(‘the_title’, $attachment->post_title);
the_attachment_link($attachment->ID, false);
}
}
?>
Как-то по образу и подобию этого? А как?О, Сергей, Вы написали раньше меня. Сейчас попробую Ваш код.
- Тема «Вывод картинки в меню к каждому посту» закрыта для новых ответов.