WordPress как на ладони
Наставник Трепачёв Д.П., phphtml.net wordpress jino

Как расширять методы классов в админке?

Пожалуйста, подскажите как можно расширить Walker_Category_Checklist::start_el

в wp-admin/includes/class-walker-category-checklist.php
в классе есть метод, формирующий дерево рубрик при редактировании поста, я хочу расширить вывод, и в скобках рубрикам вывести свою переменную. Напрямую изменить в коде я это могу, но при любом обновлении это слетает.

Написал плагин, но не могу понять как перехватить этот метод и расширить его, подскажите пожалуйста.

Спасибо!

0
Гость 8 месяцев назад
  • 0

    Отвечу сам себе, т.к. решил этот вопрос:

    // расширяю класс экстендом
    require_once ABSPATH .'/wp-admin/includes/template.php';
    
    class My_Category_Haha extends Walker_Category_Checklist {
    
    	function start_el( & $output, $category, $depth = 0, $args = [], $id = 0 ){ 
    		//тут код, перезатираю старый + мои изменения
    	}
    
    }
    
    function wp_terms_id_change( $args, $post_id = null ){
    	global $post_type;
    	$args['walker'] = new My_Category_Haha();
    
    	return $args;
    }
    
    //далее я это цеплял в админке
    add_action('wp_terms_checklist_args', 'wp_terms_id_change');
    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Регистрация. Вход.