根据宽度更改“每页帖子数”

时间:2013-08-21 作者:BoBoz

我正在研究一个反应迅速的主题。一部分是一种新闻流(博客)。在桌面宽度(767px以上)中,新闻模板垂直分为两部分。左侧部分是一个导航,其中列出了链接到实际新闻项目的标题和日期。右侧是内容显示的位置。“Posts page”设置为该页面,“Posts per page”设置为1,因此右侧内容区域一次显示一条新闻。

这种垂直分割的模板结构在桌面宽度上效果很好,但在较小的宽度上效果不太好。因此,对于宽度小于768的内容,我采用了一种更传统的方法,即删除左侧导航部分,并以100%宽度显示内容(所有媒体查询)。在这种情况下,“每页帖子”将设置为5-7篇帖子。

那么,如何根据sreen宽度更改“每页帖子数”?还是有其他方法来实现这一点?

1 个回复
SO网友:John

一种简单的方法是使用CSS和PHP的解决方案。

<?php
$postcount = 1;
$wp_query = new WP_Query();
while ($wp_query->have_posts()) : $wp_query->the_post();
?>

<div class="post-<?php echo $postcount ?>">
<h3><a href="<?php the_permalink() ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3>
<div class="entry">
<?php the_excerpt(); ?>
</div>
</div>

<?php
$postcount++;
endwhile;
?>
然后你可以根据屏幕大小来设计你的网站。

.post-1, .post-2, .post-3 { }
.post-4, .post-5, .post-6 { display:none; }

结束

相关推荐

为什么`wp_options`表没有`autoload`的索引?

WordPress提供的每个页面的开头都有一个MySQL调用来获取选项:SELECT option_name, option_value FROM wp_options WHERE autoload = \'yes\'; 因为上没有索引autoload 列,MySQL必须查找所有行。我还看到了this answer 表示即使有指数,也不会有业绩提升。在我的应用程序中,我使用了许多瞬态值作为会话替换。他们工作得很好,我有自己的垃圾收集程序。我注意到wp_options 表,我的瞬态值(以_tran