0

你能在创世纪主题结构中添加类吗?

例如:

do_action('genesis_before_header');
do_action('genesis_header');
do_action('genesis_after_header');

这些函数在哪里初始化,我可以在哪里添加或创建自己的函数?

4

2 回答 2

0

例如do_action( 'genesis_header' );,如果您希望更改标题或 HTML 标记的类别,请使用此代码。

这是默认结构

add_action( 'genesis_header', 'genesis_header_markup_open', 5 );
function genesis_header_markup_open() {
    genesis_markup( array(
        'html5'   => '<header %s>',
        'xhtml'   => '<div id="header">',
        'context' => 'site-header',
    ) );
    genesis_structural_wrap( 'header' );
}
function genesis_header_markup_close() {
    genesis_structural_wrap( 'header', 'close' );
    genesis_markup( array(
        'html5' => '</header>',
        'xhtml' => '</div>',
    ) );
}
add_action( 'genesis_header', 'genesis_header_markup_close', 15 );

这是您的自定义结构

remove_action( 'genesis_header', 'genesis_header_markup_open', 5 );
remove_action( 'genesis_header', 'genesis_header_markup_close', 15 );
add_action( 'genesis_header', 'genesis_header_markup_open_custom', 5 );
function genesis_header_markup_open_custom() {
    genesis_markup( array(
        'html5'   => '<div %s>',
        'xhtml'   => '<div id="my-header">',
        'context' => 'my-header',
    ) );
    genesis_structural_wrap( 'header' );
} 
function genesis_header_markup_close_custom() {
    genesis_structural_wrap( 'header', 'close' );
    genesis_markup( array(
        'html5' => '</div>',
        'xhtml' => '</div>',
    ) );
}
add_action( 'genesis_header', 'genesis_header_markup_close_custom', 15 );

或者简单地添加一个包含自定义 HTML 标记和类的自定义函数。用这个

add_action( 'genesis_header', 'opening', 6 );
add_action( 'genesis_header', 'closing', 14 );
function opening(){
    echo '<div class="opening">'; //Opening div element 
}
function closing(){
    echo '</div>'; //Closing div element
}

输出

在此处输入图像描述

要知道创世结构的位置,请访问此文件夹

theme/genesis/genesis/lib/structure

希望这会有所帮助。

于 2015-03-11T00:52:49.560 回答
0

如果您只需要特定模板上的正文类,请尝试

//* Add custom body class to the head
add_filter( 'body_class', 'my_body_class' );
function my_body_class( $classes ) {
   $classes[] = 'YOUR-CLASS-HERE';
   return $classes;
}

对于其他代码片段和用例,请尝试https://my.studiopress.com/snippets/custom-body-class/

于 2015-12-29T21:01:42.700 回答