X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Wordpress, get_posts
mmkulikov
mmkulikov
Topic Starter сообщение 8.4.2015, 19:22; Ответить: mmkulikov
Сообщение #1


Есть спецы по ВП?
Пол дня что-то туплю :pionertrava:
После вставки кода (см.под спойлером) ломается основной цикл (похоже начинает выводит тоже, что и этот
дополнительный, только с пагинацией как у основного)
Причем убирал(комментировал) почти весь код, для "поломки"
основного цикла достаточно одной "таблэтки" $posts = get_posts( $args );
Мозг закипает, ткините, если кому не лень, в чем "прокололся"?

Развернуть/Свернуть
Код
    <div id="left-sidebar">
        <h3>Афиша</h3>
        <?php
        global $post;
        $tmp_post = $post;

        $args = array( 'suppress_filters' => false, 'cat' => 24, 'posts_per_page' => 20 );
        $posts = get_posts( $args );
        foreach( $posts as $post ){
            setup_postdata($post);
            ?>
            <article id="post-<?php the_ID(); ?>" rel="<? the_permalink();?>">
                <a href="<?php the_permalink(); ?>" class="thumb-link"><?php the_post_thumbnail( array(135,100) ); ?></a>
                <div style="max-width: 330px; max-height: 100px; overflow: hidden; float: left;">
                    <h2 class="blog-title" style="width:100%; margin:4px 0px; clear: none; font-size: 16px;"><a href="<? the_permalink();?>" title="<? the_title();?>"><? the_title();?></a></h2>
                    <header class="entry-header entry-meta">
                        <?php thinkup_input_blogdate(); ?>
                    </header><!-- .entry-header -->

                    <?php the_excerpt(); ?>
                </div>

                <div style="clear: both;"></div>
            </article>
            <?php
        }
        wp_reset_postdata();
        $post = $tmp_post;
        ?>
    </div>


Есть еще один "нюанс"
Развернуть/Свернуть
function removeFromHome($query) {
if ($query->is_home() && $query->is_main_query()) {
$query->set('cat','-24');
}
}
add_filter('pre_get_posts','removeFromHome');

Если отключить этот фильтр - тогда все начинает работать предсказуемо и по "документации".


--------------------
Сдается, обращаться скайп avdesk-it-kmm
VPS от 5€
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andreykashops
andreykashops
сообщение 9.4.2015, 2:06; Ответить: andreykashops
Сообщение #2


Код
wp_reset_postdata();

замените на
Код
wp_reset_query();


--------------------


Поблагодарили: (2)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
mmkulikov
mmkulikov
Topic Starter сообщение 9.4.2015, 19:29; Ответить: mmkulikov
Сообщение #3


Цитата(andreykashops @ 9.4.2015, 0:06) *
wp_reset_query();

Еще вчера пробовал - чудо не произошло :pardon:

Решение нашел
Вот рабочий код
Развернуть/Свернуть
<aside class="widget">
<h3 class="widget-title">АФИША</h3>
<div class="textwidget">
<?php
$allposttype = mp_get_all_posttype();
query_posts( array( 'cat' => '24', 'post_type'=> $allposttype, 'posts_per_page' => 10, 'ignore_sticky_posts' => 1, 'orderby' => 'post__in', 'order' => '') );
while ( have_posts() ) : the_post(); ?>
<article id="post-<?php the_ID(); ?>" rel="<? the_permalink();?>">
<a href="<?php the_permalink(); ?>" class="thumb-link"><?php the_post_thumbnail( array(135,100) ); ?></a>
<div style="max-width: 330px; max-height: 100px; overflow: hidden; float: left;">
<h2 class="blog-title" style="width:100%; margin:4px 0px; clear: none; font-size: 16px;"><a href="<? the_permalink();?>" title="<? the_title();?>"><? the_title();?></a></h2>
<header class="entry-header entry-meta">
<?php thinkup_input_blogdate(); ?>
</header><!-- .entry-header -->

<?php the_excerpt(); ?>
</div>

<div style="clear: both;"></div>
</article>
<?php endwhile; wp_reset_query(); ?>
</div>
</aside>


Но непонятка нестыковка c документацией и рекомендациями к дополнительным циклам осталась!
По-факту вышло, что если до вывода основного цикла использовать get_posts и
использовать какой-то фильтр - получаем полностью невменяемую выдачу.
А вот не рекомендованная к использованию query_posts отработала совершенно верно и адекватно!
Шайтан :hmhm: какой-то, или барабашка... Не хорошо.


--------------------
Сдается, обращаться скайп avdesk-it-kmm
VPS от 5€
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andreykashops
andreykashops
сообщение 9.4.2015, 20:16; Ответить: andreykashops
Сообщение #4


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

Сообщение отредактировал andreykashops - 9.4.2015, 20:16


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
mmkulikov
mmkulikov
Topic Starter сообщение 10.4.2015, 12:53; Ответить: mmkulikov
Сообщение #5


Цитата(andreykashops @ 9.4.2015, 18:16) *
глобальные переменные($post, $posts)...

Сохраняются, переименовываются ... :pardon:
Похоже дело еще и в конкретной теме (тема что-то "крутит" с пагинацией и выводом основного цикла)

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Сдается, обращаться скайп avdesk-it-kmm
VPS от 5€
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыПродам базу сайтов Wordpress в 16 миллионов доменов! Свежая сборка.
17 Boymaster 9790 17.3.2024, 2:53
автор: Boymaster
Открытая тема (нет новых ответов) Перенос сайта на CMS Wordpress
8 freeax 4846 10.3.2024, 14:58
автор: freeax
Открытая тема (нет новых ответов) Как настроить в WordPress для SEO оптимизации
8 rownong27 2431 2.3.2024, 12:59
автор: toplinks
Горячая тема (нет новых ответов) Восстановление сайтов из Вебархива на Wordpress.
39 freeax 32496 14.2.2024, 14:32
автор: freeax
Открытая тема (нет новых ответов) Разработка/доработка сайтов Wordpress, HTML/CSS/JS
Вёрстка, перенос на WP, правки
9 malamut 3331 25.1.2024, 14:36
автор: malamut


 



RSS Текстовая версия Сейчас: 29.3.2024, 1:30
Дизайн