我试图找到一种方法,如何根据来自的页面来改变single.php模板。
让我们说我有一个wordpress安装,其目标网页为“ Root ”,这会导致两个不同的子页面,我称之为“红色”, “的蓝”。两者都有几个子页面,基本上是两个独立的网站。
两者具有相同的结构但不同的css和不同的导航。 通过检查每个子页面上的父/祖父母,我可以在页面加载时分配正确的CSS和导航。
到目前为止,一切都很好,花花公子,但是如何在打开一个帖子时处理这个问题。
“红色”和“蓝色”都列出了最后4个帖子(两个网站共享相同的新闻,因此不按类别更改),但是当我点击在他们身上wordpress会自动加载single.php以及“ Root ”页面的默认css和导航。
我正在寻找一种能够从即将到来的页面进行检查的方法,因此我能够分配正确的导航和CSS。与博客帖子索引页面相同的问题,我通过创建两个自定义博客页面解决了这个问题,并使其中一个成为“红色”的孩子和“蓝色”之一
我能想到的最简单的解决方案是使用$ _Session,但一方面它不是防弹的,另一方面,网站将被缓存,因此它不再适用。
如果有人有想法,我将不胜感激。
答案 0 :(得分:0)
我认为最简单的方法是将一个额外的参数转发给请求,并根据该参数,将一个类添加到html的主体(例如:)。 param可以作为简单的$ _GET参数转发,也可以将其保存为$ _session参数。通过这两种方式,您可以保留参数并将其转发到您访问的下一页,以便用户获得流畅的用户体验。
使用$ _GET param将确保您可以使用任何缓存系统,任何事情都不会中断。如果您可以跳过html的缓存,只需使用简单的$ _session。