Как я могу фильтровать (перехватывать) функцию внутри класса Wordpress?

У меня есть пример плагина:

class ProductCustomPostType {
        function __construct() {
            ..
            add_action( 'manage_posts_custom_column', array( $this, 'managePostCustomColumns' ) );
            }

    function managePostCustomColumns( $column_name ){
    ...
    }
   }

Мне нужно подключить функцию managePostCustomColumns из functions.php с действием add_filter.

Как я могу это сделать? Спасибо!


person Bohdan Hdal    schedule 04.10.2011    source источник


Ответы (2)


Если вы хотите перехватить пользовательский код при применении фильтра, вам нужно вызвать:

add_filter( 'manage_posts_custom_column', array( $this, 'managePostCustomColumns' ) );

Если вам нужно вызвать все функции, привязанные к определенному файлору, используйте:

apply_filters('manage_posts_custom_column', 'column_name')
person Maxim Krizhanovsky    schedule 04.10.2011
comment
Я не имею права изменять код плагина. Я могу создать хук только снаружи в файле темы functions.php. - person Bohdan Hdal; 05.10.2011

взгляните на ссылку и посмотрите на комментарии тоже, ответ в комментариях. это может помочь вам.

Переопределить плагин с помощью functions.php

person Robot    schedule 05.10.2011
comment
это тема о функциях, но не о функциях в классах. - person Bohdan Hdal; 05.10.2011