Wordpress пост-запрос не добавляется - PullRequest
2 голосов
/ 13 октября 2010

Я пытаюсь разместить сообщение из определенной категории на моей статической домашней странице.

Мне кажется, что все работает так, как мне хотелось бы, за одним исключением.

Мне бы хотелось, чтобы в сообщение была включена стандартная ссылка "Продолжить чтение" (<!--more-->), но я не могу заставить ее работать на моей домашней странице, вместо этого отображается все содержимое сообщения.

Вот код, который я использую для отображения одного поста из категории на моей домашней странице:

<?php $recent = new WP_Query("cat=4&showposts=1"); while($recent->have_posts()) : $recent->the_post();?>
<h2><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
<?php the_content( __( 'Continue reading &rarr;')); ?>
<?php endwhile; ?>

Как заставить тег <!--more--> правильно работать с приведенным выше кодом?

Ответы [ 2 ]

4 голосов
/ 13 октября 2010

Быстрый тег <!--more--> обычно не работает ни на чем, кроме домашней страницы. Попробуйте следовать совету здесь в разделе «Как читать больше на страницах», например:

<?php
global $more;
$more = 0;
?>
//The code must be inserted ahead of the call to the content

Тогда продолжайте, как вы были:

<?php $recent = new WP_Query("cat=4&showposts=1"); while($recent->have_posts()) : $recent->the_post();?>
<h2><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
<?php the_content( __( 'Continue reading &rarr;')); ?>
<?php endwhile; ?>

Вам нужно будет установить $ more в 0 перед каждым вызовом the_content (); Сбрасывается каждый раз, когда попадает в цикл.

Тема обсуждения , на которую ссылается эта запись Кодекса , говорит о проблеме, которую вы решаете.

1 голос
/ 13 октября 2010

Мне удалось найти некоторую информацию здесь: http://codex.wordpress.org/Function_Reference/the_content

Нашли эти строки, которые, кажется, делают свое дело:

global $more;    // Declare global $more (before the loop).
$more = 0;       // Set (inside the loop) to display content above the more tag.
the_content("Read More");

Добавили информацию в мой код и все работает!Добавлен в ссылку «Подробнее», когда в сообщение добавлен тег more.

Вот мой окончательный код:

<?php $recent = new WP_Query("cat=4&showposts=1"); while($recent->have_posts()) : $recent->the_post();?>
<h2><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
<?php global $more;
$more = 0;
the_content("Read More");
 ?>
...