Master-X
Форум | Новости | Статьи
Главная » Форум » Блоги и Социальные сети » 
Тема: Wordpress. Тело текущего поста
цитата
20/01/11 в 14:47
 FXIX
господа, как получить тело текущего поста, на странице поста.
Зашли на пост. Заголовок поста можно получить как

Цитата:
the_title();


Теги поста можно получить как

Цитата:
if (get_the_tags()) {
foreach((get_the_tags()) as $tag) {
echo $tag->name." ";
}
}


А как текст поста получить?

Цитата:

echo the_content();
echo the_excerpt();
echo get_the_content();

не работает
цитата
20/01/11 в 15:01
 Yacc
the_content Displays the contents of the current post.

Убери echo, the_content ничего не возвращает. Если надо вернуть - добавь префикс get_
цитата
20/01/11 в 15:14
 FXIX
а неправильный ответ. пробовал итак и эдак. правильный вот

Цитата:
function getpostid() {global $post; return $thePostID = $post->ID;}
$postid=getpostid();
echo get_post($postid)->guid; # урл поста
echo get_post($postid)->post_title; # заголовок поста
echo get_post($postid)->post_content; # тело поста


поэтому лови рейтинг 5 smail54.gif
цитата
20/01/11 в 15:48
 Yacc
FXIX писал:
а неправильный ответ.

А правильный вопрос: Как получить тело текущего поста вне цикла? icon_smile.gif
цитата
20/01/11 в 18:02
 FXIX
да icon_biggrin.gif
цитата
20/01/11 в 20:02
 Yacc
Всё таки мне интересно в каком сценарии the_content не выводит контент текущего поста? icon_smile.gif
цитата
20/01/11 в 20:13
 FXIX
ну просто в header.php между тегами <head></head> надо получить тело текущего поста, взять первое предложение, и засунуть его в дескрипшен. По-другому никак не придумал, как то что выше написал
цитата
20/01/11 в 22:06
 Yacc
Код:
global $post;
setup_postdata($post);
preg_match('/[^.]+\./', strip_tags(trim(get_the_content())), $m);
echo $m[0];
// smail101.gif


Последний раз редактировалось: Yacc (20/01/11 в 22:14), всего редактировалось 1 раз
цитата
20/01/11 в 22:12
 FXIX
угу. примерно так и сделал. спасибо smail54.gif


Эта страница в полной версии