Вывод похожих записей в сайдбаре WordPress

(Ответов: 8, Просмотров: 3002)
  1. Дипломник
    • Регистрация: 29.10.2011
    • Сообщений: 227
    • Репутация: 37
    • Webmoney BL: ?
    Добрый День, зашедшим в топик. Появилась задачка реализовать вывод похожих записей с миниатюрами и коротким куском текста из основной статьи (the content - the expert) в сайдбаре WordPress посредством php кода (Плагины исключены). Дабы было понятнее, что хочется видеть в конечном результате, приведу в пример подобный плагин - (YD Recent Posts with thumbnails и скрины 1, 2. Собственно поиск по блогам, форумам не увенчался успехом ибо приводился код с выводом популярных записей или последних, а это не то, что надо.
    • 0
  2. Йэдкий фрухт Аватар для Чеснок
    • Регистрация: 30.03.2010
    • Сообщений: 634
    • Записей в дневнике: 1
    • Репутация: 607
    • Webmoney BL: ?
    PHP код:
    <?php
    $this_post 
    $post;
    $category 106// id категории
    $posts get_posts('numberposts=6&offset=0&orderby=post_date&order=DESC&category='.$category);
    $count 0;
    foreach ( 
    $posts as $post ) {
    if ( 
    $post->ID == $this_post->ID || $count == 10) {
    unset(
    $posts[$count]);
    }else{
    $count ++;
    }
    }
    ?>


    <?php if ( $posts ) : ?> 

    <li id="related-category">

    <div class="related-cat-entry">
    <h5><a style="color: #ffffff;"href="http://www.site.ru/rubrika/kalejdoskop">Похожие</a></h5>

    <?php foreach ( $posts as $post ) : ?>
    <?php setup_postdata
    ($post); ?>

    <div class="related-cat-meta post-<?php the_ID(); ?>">

    <?php $values get_post_custom_values("feat-cat-img"); if (isset($values[0])) { ?>

    <div class="related-cat-img">
    <img src="<?php $values get_post_custom_values("feat-cat-img"); echo $values[0]; ?>" alt="<?php the_title(); ?>" width="50" height="50" border="0" /></div>
    <!-- RELATED CATEGORY IMAGE END -->

    <?php } else { ?>

    <div class="related-cat-img">
    <img src="<?php echo get_featcat_image(); ?>" alt="<?php the_title(); ?>" width="50" height="50" border="0" /></div>
    <!-- RELATED CATEGORY IMAGE END -->

    <?php ?>
    <h2><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
    <span class="related-cat-date"><?php the_time('l, j.m.Y'); ?></span>

    <p><?php the_excerpt_feat_cat(); ?></p>

    <div class="clearfix"></div>
    </div><!-- RELATED CAT META <?php the_ID(); ?> END -->

    <?php endforeach // $posts as $post ?>

    </div><!-- RELATED ENTRY END -->

    </li><!-- RELATED CATEGORY END -->

    <?php else : ?>

    <?php /* nothing */ ?>

    <?php endif // $posts ?>

    <?php
    $post 
    $this_post;
    unset(
    $this_post);
    ?>
    может поможет
    • 0
  3. Дипломник
    • Регистрация: 29.10.2011
    • Сообщений: 227
    • Репутация: 37
    • Webmoney BL: ?
    Чеснок, Кажется, код не рабочий.
    • 0
  4. Опытный Аватар для pingvincible
    • Регистрация: 28.02.2012
    • Сообщений: 373
    • Репутация: 128
    • Webmoney BL: ?
    а на чем вы хотите похожесть основать? вывод из той же рубрики, по тегам или анализируя слова в заголовке?
    Я желаю всем счастья
    • 0
  5. Дипломник
    • Регистрация: 29.10.2011
    • Сообщений: 227
    • Репутация: 37
    • Webmoney BL: ?
    pingvincible, последний вариант был бы неплох ) Если такое возможно в WP )
    • 0
  6. Опытный Аватар для pingvincible
    • Регистрация: 28.02.2012
    • Сообщений: 373
    • Репутация: 128
    • Webmoney BL: ?
    Такой вариант предлагает плагин Yet Another Related Posts. Но плагины - не для вас:) Кстати, почему не хотите их использовать?
    Я желаю всем счастья
    • 0
  7. Дипломник
    • Регистрация: 29.10.2011
    • Сообщений: 227
    • Репутация: 37
    • Webmoney BL: ?
    pingvincible, Ничего особенного, просто решил новый сайтец сделать без плагинов, (только functions.php т.е скрипты) ну по крайней мере, на сколько это возможно ) Пока получается )
    • 0
  8. Опытный Аватар для pingvincible
    • Регистрация: 28.02.2012
    • Сообщений: 373
    • Репутация: 128
    • Webmoney BL: ?
    Для вывода похожих записей на основании категории можно вот так сделать:

    PHP код:
            <div id="related_posts">
                    
                            <h2 class="widgettitle">Похожие статьи</h2>
                            <ul >
                                <?php global $post;
                                
                                
    $cat get_the_category$post->ID );
                                
                                if (
    $cat){    
                                    
    $cat_id $cat[0]->cat_ID;
                                }
                                else{
                                    
    $cat_id 1// Тут задается дефолтная категория
                                
    }
                                
                                
    $args = array( 'numberposts' => '3''category' => $cat_id );
                                
    $myposts get_posts$args );
                                foreach( 
    $myposts as $post ) :    setup_postdata($post); ?>
                                    <li>
                                        <?php echo get_the_post_thumbnail($post->ID'thumbnail'); ?> // Миниатюра поста
                                        
                                        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
                                        <p><?php echo mb_substr $post->post_content 0150 ); ?> ...</p> // Кусок текста статьи
                                        <div class="clear"></div>
                                    </li>
                                <?php endforeach; ?>
                            </ul>
         
                </div>
    Будут выводиться посты той же категории, а если вы на странице, у которой нет категории, то можно задать категорию по умолчанию. В качестве картинки будет выводиться миниатюра поста. Ну и название и кусок текста, длину которого можно регулировать.
    Последний раз редактировалось pingvincible; 08.11.2012 в 22:39.
    Я желаю всем счастья
    • 2

    Спасибо сказали:

    monwm(07.12.2014), samouschka(01.03.2014),
  9. Новичок
    • Регистрация: 21.03.2012
    • Сообщений: 2
    • Репутация: 11
    • Webmoney BL: ?
    Приветствую, а как вместо дефолтной категории вывести последнии записи со всех категорий, на страницах вне рубрик?
    PHP код:
                                else{
                                    
    $cat_id 1// Тут задается дефолтная категория 
    ЗЫ... уже разобрался просто поставить 0
    Последний раз редактировалось monwm; 07.12.2014 в 23:26.
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Вывод меняющихся картинок в сайдбаре
Web программирование 4 15.08.2012 00:00
Ищу плагин вывода похожих записей в формате тизеров.
WordPress 4 09.08.2012 02:21
Случайный вывод видео в сайдбаре WordPress
WordPress 4 20.07.2012 00:55
Вывод в Wordpress популярных записей из определенных категорий
Web программирование 6 03.12.2011 20:47
Плагины для вывода похожих записей в wordpress
Дайджест блогосферы 0 29.04.2011 22:33

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры