WordPress:如何为特定页面的指定div添加自定义类
解决方案
方法一:利用已添加的body类结合CSS精准定位
既然你已经通过body_class过滤器给ID为82的页面添加了my-custom类,直接用CSS就能定位到目标div,不需要额外修改PHP代码:
/* 仅对ID为82的页面中start-class类的div生效 */ .my-custom .start-class { background-color: #ff0000; /* 替换成你需要的颜色值 */ }
原理很简单:只有ID为82的页面的<body>标签会带有my-custom类,所以这个CSS选择器只会匹配该页面下的.start-class元素,不会影响其他页面。
确认body_class代码正确性(可选)
如果不确定之前添加类的代码是否正确,可以用以下代码确保仅给ID82的页面添加类:
add_filter( 'body_class', 'custom_body_class_for_page_82' ); function custom_body_class_for_page_82( $classes ) { // 检查当前页面是否是ID为82的页面 if ( is_page( 82 ) ) { $classes[] = 'my-custom'; } return $classes; }
把这段代码放到主题的functions.php文件中即可。
备选方法:直接在页面模板中修改div类
如果你不想依赖body类,也可以找到对应页面的模板文件(比如page-82.php),找到<div class="start-class">这一行,给它添加一个自定义类:
<div class="start-class my-custom-div">
然后用CSS定位:
.my-custom-div { background-color: #ff0000; }
这种方法更直接,但需要修改页面模板文件。
内容的提问来源于stack exchange,提问作者Luigino
相关产品推荐
相关产品推荐

