如何根据URL和定制器获得不同的主页布局

时间:2017-07-20 作者:Alexander

不知道我的问题是否足够清楚。我想显示索引的不同布局。php,基于URL和自定义设置。我在一些主题中看到了这种格式:

demo.website.com/theme/?home_layout=standard
对我来说,它看起来像是一个GET请求,并根据此请求加载不同的布局。

例如,我想在customizer中将layout设置为masonry,它应该改变主页的外观,URL应该是

demo.website.com/theme/?home_layout=masonry
如果我在customizer中切换到标准布局,那么我会得到这个URL

demo.website.com/theme/?home_layout=standard
如何做到这一点?

1 个回复
最合适的回答,由SO网友:Alexander 整理而成

对于那些想要实现相同目标的人,下面是答案:首先,我们声明一个变量,并使用一个简单的条件来保存GET请求,如果没有设置该值,那么我们定义默认值。

$layout = isset( $_GET[\'home_layout\'] ) ? $_GET[\'home_layout\'] : \'standard\';
然后只需检查条件并加载所需的模板。

if ( $layout == \'grid\' ) {
    get_template_part( \'template-parts/standard-layout\' );
}

结束

相关推荐

Make a category my homepage

我一直在想方设法,阅读每一篇帖子,想知道如何让我的主页只显示类别。就我而言,我只想展示“旅行”我尝试过另一种方法,即首先将其设置为菜单,然而,该页面不会显示为我的主页,而是显示所有我的帖子,而不是仅从旅行菜单中发布的帖子,除非我单击它有没有办法绕过这一点,因为一步一步都会很棒!