如何更改WordPress主题中部分的结构/顺序?

时间:2019-08-21 作者:davidhlyns

我正在使用一个名为“商业一页”的Wordpress主题,下面是该主题演示的链接:Buisness-One-Page. 我正试图改变各部分的结构。这是一个单页的主题,所以我想做的是重新排序部分,并在服务部分之后显示部分。

我正在使用儿童主题,并一直试图找到。php文件,其结构可以复制并更改到我的子主题目录中,但找不到它。有可能做到这一点吗?

提前感谢

1 个回复
最合适的回答,由SO网友:Rup 整理而成

我正在看免费版本。相关代码在inc/extras中。php,它似乎有一些过滤器可以启用/禁用节(business\\u one\\u page\\u ed\\u section>\\u section)和更改节的标题(business\\u one\\u page\\ult;section>\\u section\\u menu\\u title),但不能对其重新排序:

function business_one_page_get_sections(){
    $sections = array( \'about\', \'services\', \'cta1\', \'portfolio\', \'team\', \'clients\', \'blog\',
                       \'testimonial\', \'cta2\', \'contact\' );
    $enabled_section = array();
    foreach ( $sections as $section ){
        if ( esc_attr( get_theme_mod( \'business_one_page_ed_\' . $section . \'_section\' ) ) == 1 ){
            $enabled_section[] = array(
                \'id\' => $section,
                \'menu_text\' => esc_attr( get_theme_mod( \'business_one_page_\' . $section .
                                                        \'_section_menu_title\',\'\' ) ),
            );
        }
    }
    return $enabled_section;
}
为了让您对节进行重新排序,它们必须在处理$节之前对其进行筛选,或者在返回$enabled\\u节之前对其进行筛选。此功能也不是可插入的,即您不能完全覆盖它(没有猴子补丁技巧)

所以你必须编辑主题

在此处更改顺序将筛选器添加到$sections的原始值或$enabled\\u section,以便您可以编辑筛选器中的顺序,然后将该筛选器挂接到子主题中,但如果更新主题,则会丢失其中一个。如果您已经为主题付费,或者即使您没有付费,也值得询问Rara主题是否可以在这里为您添加过滤器或定制选项,以用于将来的版本。