php - 在 Wordpress 中覆盖父主题功能

标签 php wordpress

我正在为我的网站使用免费的“响应式”Wordpress 主题,并且是第一次使用子主题。

我需要在小部件下面添加一个 div 标签 <h3>标签,但标签所在的边栏函数存储在父函数中,我无法覆盖我的子主题中的函数。

这是我必须尝试删除 parent 侧边栏功能,并重新添加我自己的侧边栏功能,但它并没有删除侧边栏:

添加侧边栏的原始函数看起来与我的函数相同 child_responsive_widgets_init() , 但它叫做 responsive_widgets_init()如果有帮助的话。

<?php

function child_responsive_widgets_init() {

    register_sidebar( array(
                          'name'          => __( 'Main Sidebar', 'responsive' ),
                          'description'   => __( 'Area 1 - sidebar.php - Displays on Default, Blog, Blog Excerpt page templates', 'responsive' ),
                          'id'            => 'main-sidebar',
                          'before_title'  => '<div class="widget-title"><h3>',
                          'after_title'   => '</h3><em>&nbsp;</em></div>',
                          'before_widget' => '<div id="%1$s" class="widget-wrapper %2$s">',
                          'after_widget'  => '</div>'
                      ) );
}
function remove_parent_widgets() {
    remove_action( 'widgets_init', 'responsive_widgets_init' );
}
add_action('init','remove_parent_widgets');

add_action( 'widgets_init', 'parent_unregister_sidebars' );
function parent_unregister_sidebars() {
    unregister_sidebar( 'main-sidebar' );
}

add_action( 'widgets_init', 'child_responsive_widgets_init' );
?> 

最佳答案

我们必须wait until functions.php file is loaded , 那么我们就可以拦截父类的钩子(Hook)了。

将此添加到您 child 的 functions.php:

add_action( 'after_setup_theme', 'remove_parent_hook_so_22995302' );

function remove_parent_hook_so_22995302()
{
    remove_action( 'widgets_init', 'responsive_widgets_init' );
}

关于php - 在 Wordpress 中覆盖父主题功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22995302/

相关文章:

php - 使用 strip_tags() 防止 XSS?

PHP 和 SQL - 更新查询无法更新值

php - 如何在 Wordpress 的 PHP if 语句中显示超链接?

php - 使用ajax进行php查询

javascript - 处理 iOS 虚拟键盘 “previous” , “next” , “Go/Enter” 按钮

php - 设置 PHP 和 mySQL 脚本以自动化邮政文书工作

css - 停止 Logo 移动

css - 在 wordpress 中获取帖子缩略图并显示在 3 列中

php - 如何从 Wordpress 中的产品类别名称获取 css ID

mysql - wordpress 数据库 (wp_post_meta) 结构效率