2010-12-29 2 views
0

Я не совсем уверен, что я делаю, но нашел этот код он-лайн для пользовательского отрывка, поскольку я пытаюсь вернуть 140 многобайтовых японских символов на пользовательской странице в WordPress. Может быть, у меня нет функции strip_tags. Если да, может кто-нибудь, пожалуйста, скажите мне, что мне нужно сделать, чтобы заставить это работать? Спасибо.Как закодировать пользовательскую функцию выдержки, используя mb_substr для возврата 140 многобайтовых символов в WordPress?

front.php - 
<?php 
    $recentPosts = new WP_Query(); 
    $recentPosts->query('showposts=5'); 
?> 
<?php while ($recentPosts->have_posts()) : $recentPosts->the_post(); ?> 
    <li><a href="<?php the_permalink() ?>" rel="bookmark"><?php echo winexcerpt(140); ?></a></li> 
<?php endwhile; ?> 
</ul> 


functions.php - 
function winexcerpt($length) { 
    global $post; 
    $content = mb_substr(strip_tags($post-&gt;post_content),0,$length); 
    return $content; 
} 
+0

Какое конкретное сообщение об ошибке вы получаете? –

+0

Ошибка отсутствует, но страница не загружается. – tokyowp

ответ

0

strip_tags был встроен в PHP с версии 4, поэтому очень маловероятно, что это проблема. (Тем не менее, если у вас нет multibyte string support enabled, то mb_substr потерпит неудачу.)

Тем не менее, похоже, что это была ошибка, когда вы копировать/вставить код; - «-&gt;» часть в пределах линии strip_tags должен быть «->».

т.е .: Внутри функции winexcerpt, линия должна быть:

$content = mb_substr(strip_tags($post->post_content),0,$length); 

Как таковой, он может быть столь же просто, как фиксируя эту ошибку.

+0

Я пробовал «->», но он не работает. Есть еще рекомендации? – tokyowp

+0

@tokyowp - В журналах ошибок будет ошибка (или вам, возможно, придется включить «display_errors» в вашем php.ini и перезапустить Apache). Не зная, какова конкретная ошибка, невозможно помочь. (Я полагаю, вы проверили, что у вас есть многобайтовые функции?) –

+0

Это работает! Ты жжешь! – tokyowp