mrtsherman
  • 0
Учитель

Отрывки для страниц

  • 0

Я вставил отрывок на страницу с помощью кнопки «Дополнительно» в графическом интерфейсе WP.

У меня есть собственный loop-page.php, из которого я хочу отобразить отрывок. Но он кажется пустым?

Можно ли отображать выдержки из дочерних страниц?

$pageChildren = get_pages('sort_column=menu_order&hierarchical=0&child_of='.$post->ID);
if ( $pageChildren ) {
  foreach ( $pageChildren as $pageChild ) {
    echo '<p>And the title is: '. $pageChild->post_title.'</p>';
        print_r($pageChild);
        if (!empty($pageChild->post_excerpt)){
            echo '<p><a href="' . get_permalink($pageChild->ID) . '">' . $pageChild->post_excerpt.'</a> </p> ';
        }
        echo '<hr />';
  }
}

введите описание изображения здесь

Share
  1. Использование тега «больше» не создает отрывок. Он просто создает ссылку «Подробнее» при отображении the_content() на индексных страницах.

    Выдержки создаются/отображаются следующим образом:

    Чтобы отобразить отрывок, ваш файл шаблона должен вызывать «the_excerpt()», а не «the_content()». Примечание: вы используете эквивалент $post->post_excerpt, который также должен работать нормально.

    Затем тег шаблона «the_excerpt()» отображает отрывок, который создается следующим образом:

    1) Введя содержимое отрывка в поле «Отрывок» на экране «Редактировать сообщение/Редактировать страницу». 2) Автоматически по количеству символов, если в поле «Выдержка» не добавлено содержимое.

    РЕДАКТИРОВАТЬ:

    Итак, я полностью пропустил это сначала. Только сообщения имеют поле «отрывок». Страницы не имеют поля «отрывок». Таким образом, $post->post_excerpt никогда не будет заполнен для страниц (я думаю).

    Попробуйте запустить «setup_postdata($pageChild)» внутри цикла foreach, а затем заменить «$pageChild->post_excerpt» на «get_the_excerpt()»:

    foreach ( $pageChildren as $pageChild ) {
        setup_postdata( $pageChild );
        echo '<p>And the title is: '. $pageChild->post_title.'</p>';
            print_r($pageChild);
                echo '<p><a href="' . get_permalink($pageChild->ID) . '">' . get_the_excerpt() .'</a> </p> ';
            echo '<hr />';
    }
    

    Это работает?

    • 0

Оставить ответ

You must login to add an answer.