当我点击我的一篇网站帖子底部的“阅读更多”时,它只会将其余的文本加载到同一页面和同一部分,从而使文本元素溢出,破坏了我的布局。我注意到,当从工具栏添加“阅读更多”时,每个Wordpress帖子的末尾都有一个标签。如何重写此标记的默认行为,以便在用户单击“阅读更多…”时打开新页面为了一个职位
更新:
我使用以下代码自定义“更多”链接。然而,当点击时,它会打开同一页面的一个新实例,所有帖子都会被打开(我的意思是所有帖子都会删除链接并显示所有内容,从而给我的页面带来一种混乱的外观。
我想要的只是一个新的完全空白的页面(甚至不受我的主题影响),其中会显示所请求帖子的全文。
<?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;
}
?>
Update:
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可以帮我完成其余的工作。由于出现错误,我修剪了几个部分,并将上面的代码与提到的结果一起保留
有人知道我应该在单曲中添加或修改什么吗。php让我的任意设计将每个帖子都完全显示在上面?提前感谢
最合适的回答,由SO网友:Shellbot 整理而成
听起来这是主题设置方式的问题,因为您描述的不是more标记的常见行为。文章的第一部分表明,主题中有一些内置Javascript,导致“阅读更多”扩展文章文本,而不是将你带到单个文章页面,删除了JS应该解决的问题,而不需要任何自定义过滤器。
我还要再次检查你的主题是否有一个单独的。包括php模板,您帖子的后半部分建议可能不是,但这也可能是由主题的JS引起的。