我想自定义"最近的帖子"小部件。
由于出于不同的原因编辑核心并不好,我读到了在使用新类扩展WP_Widget
的functions.php中的工作,并覆盖widget($args, $instance)
函数编辑我想要的代码自定义,然后将其添加到widget_init钩子,但我无法得到它的工作原理。
我的意思是,我认为我应该扩展WP_Widget_Recent_Posts
,然后告诉WP使用我的课程而不是原来的课程,但......我该怎么做?
由于
答案 0 :(得分:0)
看起来您只需使用dynamic_sidebar_params()过滤器以及搜索/替换就可以逃脱。
add_filter( 'dynamic_sidebar_params', 'replace_widget_class' );
function replace_widget_class( $params ) {
if ( $params[0]['widget_name'] == 'Recent Posts' ) {
$params[0]['before_widget'] = str_replace( 'widget_recent_entries', 'widget_recent_entries_NEW', $params[0]['before_widget'] );
}
return $params;
}