出于某些原因,我必须在页面的页脚中添加一些样式(边距)。仅当页面的内容部分是产品存档时才应用它。
我尝试在archive-products.php文件中创建一个变量,如下所示:
<?php global $template;
$template = 'prodarchive';
var_dump($template);?>
根据var_dump设置值。接下来我试着像我这样在我的footer.php中调用它
<?php if ($template === 'prodarchive' ) {?>
然后是它需要做的事情。
有些测试显示footer.php文件无法重现$ template的值。有什么问题?
答案 0 :(得分:0)
答案 1 :(得分:0)
最简单的解决方案(正如@seemly所指出的)是将body_class()
函数应用于<body>
标记:
<body <?php body_class(); ?>>
这将应用一系列可用于CSS的有用类,包括一个产品存档页面。
另一种方法是使用is_post_type_archive('product')
,它返回一个布尔值。
至于为什么你的全局变量在footer.php中不起作用,我很确定get_footer()
在被调用时不会传递所有全局变量。