Wordpress 使用相同的 URL 来显示不同的内容,例如季节性网站
Posted
技术标签:
【中文标题】Wordpress 使用相同的 URL 来显示不同的内容,例如季节性网站【英文标题】:Wordpress use the same URL to display different content eg for seasonal websites 【发布时间】:2018-04-23 02:07:34 【问题描述】:我希望创建一个夏季和冬季版本的网站。
一些内容,例如。产品是本季独有的。联系页面等其他内容是通用的。
每个季节的菜单/页脚都不同。我可以设置一个条件菜单,以便它显示某些页面/分类法等,但是对于通用页面如何工作?
示例:https://www.whistlerblackcomb.com/about-us/contact-us
您可以看到他们使用相同的联系页面和相同的 URL,但具有特定季节的菜单和略有不同的内容(英雄图片),具体取决于用户是否点击了“夏季”或“冬季”开关(右上角)。
这是如何实现的?
我认为一个很好的方法可以与 hreflang 的工作方式相同,但我不知道如何在语言之外做到这一点。
【问题讨论】:
【参考方案1】:他们设置了一个 cookie(如果您使用的是 chrome,请打开开发者工具,点击应用程序 > Cookies > https://www.whistlerblackcomb.com,您将看到一个条目“季节”,当您点击该开关时会发生变化)。在服务器上,他们检查 cookie,然后根据其值改变响应。
【讨论】:
干杯戴夫,我不确定如何在 wordpress 环境中实现不同的响应,但会进一步研究。【参考方案2】:为什么不在你的functions.php中写一个简单的函数来检查当前月份:
<?php
function is_winter()
$month = date('m');
if($month > 10 || $month < 3)
return true;
else
return false;
?>
然后在您网站上的任何位置使用,例如:
<?php
if(is_winter())
//It's Winter
else
//It's NOT Winter
?>
【讨论】:
感谢您的回复,我不确定这将如何显示某些页面构建器模块或菜单等。如果您可以使用 if else 语句包装模块、标题等,那可以工作!这可能吗? 你可以有 2 个单独的头文件 header.php 和 header-summer.php 然后 if(is_winter())get_header();elseget_header('summer'); 或者如果你只想要一个头文件,您可以有 2 个菜单,我不确定您是如何调用菜单的,但如果您使用的是 wp_nav_menu($args);你可以有 if(is_winter())$args = $winter_argselse$args = $summer_args。您可以使用此函数添加一个 CSS 类,例如 if(is_winter())echo 'winter-class' 进行样式设置。您可以多次使用它并将任何您喜欢的东西包裹在其中。 好的,是的,这是有道理的......如果是在冬季,访问者是否可以点击“夏季”按钮,它会显示夏季标题(以及任何其他版本)? 我确定可以完成,不确定您的夏季页面是如何设置的,但可能会通过在 URL 末尾传入错误参数或查询字符串来覆盖 is_winter() 函数?winter=false 有几种方法可以做到这一点。 感谢 Paul 的指导,我将学习一些东西并开始测试。以上是关于Wordpress 使用相同的 URL 来显示不同的内容,例如季节性网站的主要内容,如果未能解决你的问题,请参考以下文章
如何仅通过 CSS 使具有相同类的 div 链接到 Wordpress 中的不同 URL?
301 重定向不起作用 (WordPress) - [ URL 中 ?m=1 的问题]
在wordpress中使用jPlayer从不同的url播放不同的文件