Нужно ли создавать экземпляр класса XMLRPC или любого класса в другом классе для доступа к его методам?

Я хотел бы использовать некоторые из методов класса XML RPC «wp_xmlrpc_server» в моем собственном классе. Является ли этот класс экземпляром уже или я должен сам его объявить? Если да, то как?

Solutions Collecting From Web of "Нужно ли создавать экземпляр класса XMLRPC или любого класса в другом классе для доступа к его методам?"

Насколько мне известно, класс XML RPC не создается, если только не требуется, то есть когда запрос находится в /xmlrpc.php .

Вы должны создать экземпляр класса так же, как это делает Core:

 include_once(ABSPATH . 'wp-admin/includes/admin.php'); include_once(ABSPATH . WPINC . '/class-IXR.php'); include_once(ABSPATH . WPINC . '/class-wp-xmlrpc-server.php'); /** * Posts submitted via the XML-RPC interface get that title * @name post_default_title * @var string */ $post_default_title = ""; /** * Filter the class used for handling XML-RPC requests. * * @since 3.1.0 * @param string The name of the XML-RPC server class. */ $wp_xmlrpc_server_class = apply_filters( 'wp_xmlrpc_server_class', 'wp_xmlrpc_server' ); $wp_xmlrpc_server = new $wp_xmlrpc_server_class; 

У вас есть два варианта для этого:

  1. Создайте метод внутри вашего класса для создания экземпляра класса XML RPC и сохраните экземпляр переменной класса.
  2. Создайте экземпляр вне класса и передайте экземпляр в ваш класс. Это называется « инъекция зависимостей », которая имеет как плюсы, так и минусы.