2

Wordpress<!--nextpage-->では、ポスト エディターのコード バージョンに配置すると、ポストを で分割できます。これは私のために働いています。しかし、これをテーマループファイルにハードコーディングしたい場合はどうなりますか? どうすればこれを機能させることができますか?

ループファイルに次のようなものがあるとします。

<?php the_excerpt(); ?>
<?php the_content(); ?>
<?php wp_link_pages(foobarbaz); ?>

明らかに、次の解決策は機能しません。

<?php the_excerpt(); ?>
<!--nextpage-->
<?php the_content(); ?>
<?php wp_link_pages(foobarbaz); ?>

<!--nextpage-->コードエディターで解析されたときに実行される適切なphp関数をどこで見つけることができるかわかりません。私が考えることができる唯一の解決策は、その中に新しい投稿を作成し<!--nextpage-->、何らかの方法でこの特定の投稿をループファイル内にハードコーディングしようとすることです。しかし、それを行うためのはるかに優れたクリーンな方法が必要です...

助言がありますか?

4

1 に答える 1

0

何をしようとしているのかわかりませんが、[設定] -> [閲覧] タブでアーカイブ ページに表示される投稿の数を制御できます。

コンテンツを個々の投稿に分割したい場合、これを行う最善の方法は「the_content」フィルターにフックすることだと思います。投稿を分割する基準があるかどうかはわかりませんが、単語数で を使用したくない場合はthe_excerpt;、次のように (テーマの functions.php ファイルに) 関数を記述できます。

add_filter('the_content', 'your_post_split');
function your_post_split($content) {
//do something with the content and insert <!--nextpage--> 
return $content;
}

フィルターを作成するときは、関数に渡される変数を常に返すようにしてください。

投稿の先頭に抜粋テキストを追加する場合は、次のようにします。

function your_post_split($content) {
 global $post;
 $content = $post->post_excerpt . $content;
 return $content;
}

<?php the_excerpt; ?>テンプレートから取り出します。

于 2013-07-06T22:02:16.447 に答える