проблема больших постов, скорость вывода

на сайте много больших постов, текст, иногда с графикой
вывожу их не полностью, по 5-7 штук на странице

auto_more судя по всему считывает полный текст перед тем как резать,
сайт грузится до 8 секунд даже с 1 постом

the_except дает
вывод 1 поста = 31 queries. 1.296 second
вывод 3х постов = 31 queries. 9.021 seconds

ну и потребление памяти
Потребление памяти: 11.06MB
Потребление памяти: 12.52MB

что-то все равно не так, может у меня вывод постов неверный?

<?php query_posts("showposts=1&cat=1"); ?>
<?php while (have_posts()) : the_post(); ?>

<div class="post_wrap">
<h2><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h2>
<p class="post_details"><?php the_time('jS F, Y'); ?> автор <?php the_author_posts_link(); ?>, рубрика <?php the_category(', ') ?>.</p>
<?php the_excerpt(); ?><a href="<?php the_permalink() ?>" rel="bookmark" title="читать далее">читать далее</a>
</div>

<?php endwhile; ?>

зы
хостинг в порядке, другие сайты на нем отличные результаты показывают,
там постов больших нет

сэньк ю

auto_more судя по всему считывает полный текст перед тем как резать,

Все показываемые на странице посты считываются движком в память еще до того, как вступают в действие плагины. Не нужно гадать, нужно смотреть. Вот этот запрос:

SELECT SQL_CALC_FOUND_ROWS wp_posts.* FROM wp_posts WHERE 1=1 AND wp_posts.post_type = ‘post’ AND (wp_posts.post_status = ‘publish’ OR wp_posts.post_status = ‘private’) ORDER BY wp_posts.post_date DESC LIMIT 0, 10

Естественно, auto_more тратит больше времени на "грамматический разбор", чем excerpt, тупо обрезающий кусок текста.

хостинг в порядке, другие сайты на нем отличные результаты показывают,
там постов больших нет

Очень сомневаюсь, что хостинг в порядке. Точнее, сомневаюсь, что он не тормоз.

wp super cache или другой плагин может помочь или не рассматривать?

Как минимум надо понять, что тормозит. Кстати, большие посты – это сколько в цифрах?

23 страницы А4, 33000 знаков
+ часть из них таблички идут

30 кил – это очень немного. Вот метр затолкать….

Ой, я пока тут с Вами ля-ля, заодно умучал свой 2.5.1 и принялся мучать 2.6, а он тормозит так, что… 38 секунд на первую я давно не видел. Всё, чао, буду разбираться.

Кстати, в auto_more 3.2 то ли мегабаг, то ли у меня паранойя, но я уже выложил 3.3 (по тому же адресу) и буду серьезно разбираться.

окей, буду ждать вестей)

Отправил на email отладочную версию. Если не возражаете, уйдем пока на email, чтобы не смущать тут заумными речами неокрепшие умы 😀

Для тех, кому интересно. Есть предварительный результат. Оказалось, что западло кроется в функции mb_strtolower. В эксперименте участвует пост размером ~570 килобукв.

С такой проверкой вхождения токенов (12 штук):
$p1 = mb_strpos(mb_strtolower($posts[$i]->post_content,"UTF-8"),$brp,$offset,"UTF-8"))
время парсинга 1.745s

С такой
$p1 = mb_strpos(strtolower($posts[$i]->post_content),$brp,$offset,"UTF-8")
время парсинга 1.626s

С такой
$p1 = mb_strpos($posts[$i]->post_content,$brp,$offset,"UTF-8")
время парсинга 0.152s

Отака фігня, малята 😀

ничего не поняла, но интересно 🙂
А новая версия auto_more будет?
или 3.3 это она и есть?

Будет 3.4.

Anonymous
Отправить
Ответ на: