私のウェブサイトの投稿の一番下にある「もっと読む」をクリックすると、同じページと同じセクションにある残りのテキストが読み込まれるだけで、要素がテキストであふれ、レイアウトが損なわれます。ツールバーから[もっと読む]を追加すると、すべてのWordpress投稿の最後にタグがあることに気付きました。ユーザーが投稿のために[続きを読む...]をクリックしたときに新しいページが開かれるように、このタグのデフォルトの動作をオーバーライドする方法を教えてください。
更新:
moreリンクをカスタマイズするために次のコードを使用しました。ただし、クリックすると同じページの新しいインスタンスが開き、すべての投稿のラップが解除されます(すべての投稿のリンクがドロップされ、すべてのコンテンツが表示されるため、私のページは見苦しくなります)。
欲しいのは、要求された投稿の全文が表示されている、まったく新しい空白のページ(私のテーマに影響されることなく)です。
<?php
add_filter( 'the_content_more_link', 'modify_read_more_link' );
function modify_read_more_link() {
return '<a class="more-link" target="_blank" href="' . get_permalink() . '">ادامه...</a>';
}
?>
<?php
$cat_id=get_cat_ID('تازه ترین اخبار');
$posts = get_posts ("cat=$cat_id&posts_per_page=1");
if ($posts)
{
foreach ($posts as $post):
setup_postdata($post); ?>
<h2><?php the_title(); ?></h2>
<?php the_content();?>
<?php endforeach;
}
?>
更新:
Following the comments, I created a single.php with the following code:<br/>
<?php
get_header(); ?>
<div id="primary" class="content-area">
<div id="content" class="site-content" role="main">
<?php
// Start the Loop.
while ( have_posts() ) : the_post();
get_template_part( 'content', get_post_format() );
if ( comments_open() || get_comments_number() ) {
comments_template();
}
endwhile;
?>
</div><!-- #content -->
</div><!-- #primary -->
<?php
get_footer();
?>
ただし、メインページで[続きを読む]をクリックすると、コメント送信フォームと共に、自分のサイトのヘッダーのみが新しいページに表示されます。そのため、投稿自体は表示されません。私はWordpressが私のために残りをするだろう準備ができたテーマの内容を単にコピーして貼り付けることができるどこかで読んだ。エラーが発生したため、いくつかの部分をトリミングし、上記のコードを上記の結果と一緒に使用しています。
single.phpに自分の恣意的なデザインで各投稿を完全に表示させるには、何を追加または変更する必要があるのかを誰かが知っていますか?前もって感謝します
これはあなたのテーマの設定方法に問題があるように思えます。なぜならあなたが説明するものはmoreタグの通常の振る舞いではないからです。投稿の最初の部分では、テーマにJavascriptが組み込まれているため、1つの投稿ページに移動するのではなく、投稿のテキストを拡張して、カスタムフィルタを使用せずにJSで解決できるようにします。
私はまたあなたのテーマが実際にsingle.phpテンプレートを含んでいることを再確認したいでしょう、あなたの投稿の後半部分は多分そうではないでしょうが、これもテーマのJSによって引き起こされたのかもしれません。
このstackoverflow 投稿 は私を助けました。私は私のために働いていた次のコードで単一のPHPを追加しました:
<?php
get_header(); ?>
<div id="primary" class="content-area">
<div id="content" class="site-content" role="main">
<?php while ( have_posts() ) : the_post(); ?>
<h3><?php the_category(' › '); echo " › "; the_title(); ?></h3>
<?php the_content(); ?>
<?php endwhile; // end of the loop. ?>
</div><!-- #content -->
</div><!-- #primary -->
<?php
get_footer();
?>
とにかく答えてくれてありがとう。
抜粋フィールドを空白のままにしている可能性があります。テキスト(通常は各投稿の概要)が表示されている場合は、本文全体ではなくページに表示されます。試してみてください。
デフォルトのカスタマイズについてもっと知るためには、もっとリンクチェック を読んでください