1

Wordpress のテーマを変更していて、ホームページのストーリーに表示される限られた数の文字を表示し、残りのストーリーへのリンクを含めたいです。これは、作成者が中断が発生するポイントを指定する必要なく、自動的に行われる必要があります。ただし、htmlタグの使用を許可したいのですが、タグが閉じられるまでストーリーを分割したくありません。

私が使用しているコードにstrip_tagsは、html タグの途中で文字の区切りが発生しないようにする関数が含まれていました。しかし、コンテンツの作成者は、いくつかのタグを含めることができるようにしたいと考えていました。以前の Web マスターは、時間の経過とともにテーマを変更して、などのタグを使用できるようにしまし<p><i>。しかし、現在私はサイトに取り組んでおり、コンテンツの作成者はリンクや画像などを含めることができるようにしたいと考えています. コマンドをコメントアウトしようとしましたstrip_tagsが、タグの途中にある場合やタグが適切に閉じられていない場合、任意のポイントでテキストを分割すると問題が発生する可能性があるため、コマンドが含まれている理由がわかりました。

タグが閉じられていることを確認するための規定がphpにあるかどうかを調べようとしているので、テキストを分割する前にそれを行うことができます。または、他の代替手段かもしれません。私が使用しているコードのスニペットを以下に示します。

$content = get_the_content('', $stripteaser, $more_file);
$content = apply_filters('the_content', $content);
$content = str_replace(']]>', ']]&gt;', $content);

//Commenting out following line causes problems
//$content = strip_tags($content, '<p><br><b><i><strong><em>');

if ((strlen($content)>$max_char) && ($espacio = strpos($content, " ", $max_char ))) {
    $content = substr($content, 0, $espacio);
    $content = $content;
    echo "<p>";
    echo $content;
    echo "...";
    echo "&nbsp;<a rel='nofollow' href='";
    the_permalink();
    echo "'>".$more_link_text."</a>";
    echo "</p>";
}
4

1 に答える 1

0

the_excerpt() を使用したくない場合は、フィルターや正規表現を使用せずに記述しているすべてのことを行うために、 More タグの詳細を読むことができます。

ただし、正規表現を使用して More Tag を検出することに本当に興味がある場合は、次の文字列が必要になります。

/<span id="more-\d+"><\/span>|<!--more-->/i
于 2012-07-27T21:21:02.860 に答える