Поддержка Проблемы и решения Преопределение Стандартных Функций WP

  • Здравстуйте. Как преопределить функцию wp_list_categories которая находиться в wp-incledes/category-template.php .Задача такая чтобы при обновлении вордпресса не слетали изменения с этого файла. Поэтому хотелось занести изменения в файл темы functions.php
    Объясню для чего это нужно,что бы было немного понятней.
    Есть страница (page) на которой выводятся определённые категории, и эти категории не должны поподать на главную в основном виджите..используется 'exclude' => в wp-incledes/category-template.php ,но при обновлении wp слетает.
    Вопрос как преопределить это в functions.php чтоб при обновлении не слетело?

Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Воспользуйтесь фильтром wp_list_categories:

    function exclude_categories_from_widget( $output, $args ) {
    	if ( is_front_page() ) {
    		$args = array_merge( $args, array(
    			'exclude' => array( 1, 2, 3 ),
    			'echo'    => false,
    		) );
    
    		remove_filter( 'wp_list_categories', 'exclude_categories_from_widget' );
    
    		$output = wp_list_categories( $args );
    	}
    
    	return $output;
    }
    add_filter( 'wp_list_categories', 'exclude_categories_from_widget', 10, 2 );

    Вместо 1, 2, 3 укажите ID рубрик, которые нужно исключить.

    огромное спасибо.
    p/s Я код написал похожий,но в два раза меньше и он не работал

Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Тема «Преопределение Стандартных Функций WP» закрыта для новых ответов.