2017-10-18 6 views
0

ニュース用のワードプレスサイトがあります。一定の文字数の後にテキストを切り取らなければなりません。それはすべてsubstr()経由でうまく動作しますが、x文字未満の場合、それは狂って次の<li>のリンクにナンセンスを生成します。substrで特定の文字数を入力した後にテキストを切り捨てる

これはコードです:$コンテンツで

echo '<li>', get_the_date('d.m.Y', $recent["ID"]), '&nbsp;&nbsp;<a href="' . get_permalink($recent["ID"]) . '" title="Look '.esc_attr($recent["post_title"]).'" >' . $recent["post_title"].'</a> </li> '; 
$post_id = $recent["ID"]; 
$post_content = get_post($post_id); 
$content = $post_content->post_content; 
echo mb_substr(do_shortcode($content), 0, 200 , "utf-8"); 
echo "...<br> <br>"; 
echo "</div>"; 
+0

助けになることが、あなたが必要な場合がありますHTMLタグを切り詰めたままにするには、以下のチュートリアルを参考にしてください。https://www.pjgalbraith.com/truncating-text-html-with-php/ – teeyo

答えて

0

は、任意のHTMLはありますか?それが切り落とさますもしそうならばと、それが次の「李」に無効なHTMLを行います、多分...ただ、これを見つけ、あなたがより良いtrancate文字を単語を使用していない

Remove all html tags from php string

+0

を置き換えた echo mb_substr(do_shortcode($ content)、0 、200、 "utf-8"); by echo mb_substr(strip_tags($ content)、0、200、 "utf-8"); と動作します、ありがとう:) –

関連する問題