[英]Where is the body tag in this WordPress theme?
我需要在网站的body标签中添加ID“ skrollr-body”,但在任何地方都找不到开头的body标签。 我知道这是一个非常简单的更改,但是网站不是我的,目录结构也很凌乱,他要我解决网站无法在手机/平板电脑上滚动的问题(这是由于body标签没有ID) 'skrollr-body')。
主题继承自Genesis,在header.php中,我发现确实提到了body标签,是否可以在此代码片段中添加ID? --
genesis_markup( array(
'html5' => '<body %s>',
'xhtml' => sprintf( '<body class="%s">', implode( ' ', get_body_class() ) ),
'context' => 'body',
) );
此外,主题本身中的header.php与开始body标签无关:
<div class="one-third first">
<a href="">
<img src="" />
<img src="" />
</a>
</div>
<div class="two-thirds">
<div>
<p></p>
</div>
<div id="callus">
<a href=""></a>
</div>
</div>
我们将不胜感激,如果这是一个静态网站,而不是带有CMS的动态网站,将是最容易的更改,但是此WordPress目录是如此混乱且混乱,我根本无法找到该标签。
我几乎考虑过实现一些jQuery来修改标签,但是对于这样一个简单的更改,这似乎有点过头了。
干杯。
看来您所拥有的主题有点混乱-在Genesis Framework的子主题中很少(找不到)header.php。
添加<body>
属性的正确方法是Genesis提供的过滤器:
add_filter( 'genesis_attr_body', 'so3707332_attributes_body' );
/**
* Add ID attribute to body element.
*
* @param array $attributes Existing attributes.
*
* @return array Amended attributes.
*/
function so3707332_attributes_body( $attributes ) {
$attributes['id'] = 'skrollr-body';
return $attributes;
}
只需在主题的header.php文件中找到body标记即可。替换此代码:
genesis_markup( array(
'html5' => '<body %s>',
'xhtml' => sprintf( '<body class="%s">', implode( ' ', get_body_class() ) ),
'context' => 'body',
) );
与:
genesis_markup( array(
'html5' => '<body %s>',
'xhtml' => sprintf( '<body class="%s">', implode( ' ', get_body_class('classname') ) ),
'context' => 'body',
) );
回复是否有效。
祝你好运。
试试这个:
genesis_markup( array(
'html5' => '<body %s>',
'xhtml' => sprintf( '<body id="skrollr-body" class="%s">', implode( ' ', get_body_class() ) ),
'context' => 'body',
) );
或与此:
genesis_markup( array(
'html5' => '<body id="skrollr-body" %s>',
'xhtml' => sprintf( '<body id="skrollr-body" class="%s">', implode( ' ', get_body_class() ) ),
'context' => 'body',
) );
您应该能够将ID添加到sprintf
语句中。
'xhtml' => sprintf( '<body id="skrollr-body" class="%s">', implode( ' ', get_body_class() ) ),
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.