Игнорирование

При публикации я использую связку <!–more–><!–noteaser–> что даёт мне возможность видеть на главной странице только анонсы (они у меня оформлены ввиде заголовка и картинки, текста вообще нет). Однако если пытаюсь оформить также вывод например случайного поста, то у меня выводится весь постом целиком. Теги <!–more–><!–noteaser–> опускаются. Если я правильно понял на главной странице публикация происходит более сложным способом чем в плагинах наподобие "самы комментируемый" (приведён ниже), в котором происходит просто запрос к базе и вывод публикации в таком виде как она есть. Есть ли какой способ заставить эту функцию распозновать <!–more–><!–noteaser–> ?

function get_mostcommented($limit = 1) {
    global $wpdb, $post;
    $mostcommenteds = $wpdb->get_results("SELECT  $wpdb->posts.ID, post_title, post_name, post_date, post_content, COUNT($wpdb->comments.comment_post_ID) AS 'comment_total' FROM $wpdb->posts LEFT JOIN $wpdb->comments ON $wpdb->posts.ID = $wpdb->comments.comment_post_ID WHERE comment_approved = '1' AND post_date_gmt < '".gmdate("Y-m-d H:i:s")."' AND post_status = 'publish' AND post_password = '' GROUP BY $wpdb->comments.comment_post_ID ORDER  BY comment_total DESC LIMIT $limit");
    foreach ($mostcommenteds as $post) {
            $post_title = htmlspecialchars(stripslashes($post->post_title));
            $comment_total = (int) $post->comment_total;
            $post_content = stripslashes($post->post_content);
            echo "<a href=\"".get_permalink()."\"><h1>$post_title</h1>$post_content</a>";
    }
}
Есть ли какой способ заставить эту функцию распозновать <!--more--><!--noteaser--> ?

Задачка для начинающих изучать строковые функции php. 🙂

http://www.php.net/manual/ru/ref.strings.php
🙂

так будет правильно? (изменил последние две строки)

 $post_content = explode("<!--noteaser-->",$post->post_content);
            echo "<a href=\"".get_permalink()."\"><h1>$post_title</h1>$post_content[0]</a>";

Проверяли уже? Не ругается?

вроде всё работает, во всяком случае обрезает текст именно там где надо. я просто не знаю правильно ли написано с точки зрения… эээ… php-программирования (?)

Всё, что правильно работает, может считаться правильно написанным. Даже если неправильно с точки зрения… 🙂

Спасибо!

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