• Решено smelllike

    (@smelllike)


    Вообщем, проблема такова.
    На главной странице есть сайдбар куда выводятся новости из определенной категории. В каждой новости есть тэг more и все работает.
    Но когда мы жмем на «читать далее» нужно что бы новость выводилась в области primary, а сайдбар оставался неизменным.
    Я поправил single.php и все вроде бы оукей, но в single.php в сайдбаре новости отображаются полностью и без всяких «читать далее».
    Я уже голову сломал, подозреваю, что нужно искать где-то в funtions.php, но где?

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • > Я поправил single.php и все вроде бы оукей,
    > но в single.php в сайдбаре новости отображаются
    > полностью и без всяких «читать далее».

    Что нибудь типа этого пробовали?

    <?php
    // кол-во симолово в статье с анонсом
    public $announce = 450;
    
    // $mb_str - текст статьи
    // $id - ID записи
    public function getAnnounce( $mb_str, $id ) {
        if ( mb_strlen( $mb_str ) > $this->announce ) {
          $mb_str = mb_substr( $mb_str, 0, $this->announce ) . "... " . '<a href="/?page=' . $id . '">Читать далее...</a>';
        }
        return $mb_str;
    }
    ?>

    ^
    только не
    <a href="/?page=' . $id . '">
    а
    <a href="/?p=' . $id . '">

    Спасибо, справился сам:

    sidebar.php
    я там написал
    <?php get_template_part( ‘content-sidebar’, get_post_format() ); ?>

    место
    <?php get_template_part( ‘content’, get_post_format() ); ?>

    и создал новый шаблон content-sidebar.php из которого вырезал все лишнее
    а в content-sidebar.php
    сделал вот такой ход конём
    <?php
    // small hack to show ‘more’ link =)
    global $more;
    $old_more = $more;
    $more = 0;
    the_content();
    $more = old_more;
    ?>

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «Тэг More в single.php» закрыта для новых ответов.