Intereting Posts
Созданы ли каталоги загрузок по расписанию? Преобразование комментариев в обзоры для пользовательских типов сообщений Добавить новый текстовый блок в WordPress Двадцать седьмой заголовок Ошибки редактора Wysiwyg Не удалось получить Предварительный просмотр загруженного изображения в пользовательском мета-окне Скорость загрузки WordPress Использовать неправильный шаблон для почтового типа Выполнить команду для оптимизации изображений после их загрузки в WordPress Подпишитесь на одно сообщение; Получать электронную почту по обновлению Написание плагина для скрытия ссылок get_the_content_feed с разбивкой по страницам Что не так с моим wp-запросом, не могу исключить категорию, которую я хочу $ wpdb-> insert Предоставление дубликатов htaccess старые страницы php для новых wordpress Пользовательский пост – дополнительный параметр в пользовательском URL-адресе отправляется на страницу с ошибкой

Как использовать класс в функции задания cron

  • У меня есть вакансии cron, успешно работающие в WordPress,
  • Однако, когда я пытаюсь вызвать класс из функции cron, он не запускается.
  • Как мне позвонить в класс с функцией задания cron?

add_action( 'hourly_event', 'hourly_function' ); function hourly_function() { // This otherwise works when not within a cron job function $newClass = new newClass(); $newClass->newClass_function($var1, $var2, $var3); } 

$ newClass объявляется внутри плагина.


 require plugin_ROOT.'gd-text/Box.php'; require plugin_ROOT.'gd-text/Color.php'; require plugin_ROOT.'gd-text/HorizontalAlignment.php'; require plugin_ROOT.'gd-text/TextWrapping.php'; require plugin_ROOT.'gd-text/VerticalAlignment.php'; use GDText\Box; use GDText\Color; class newClass { public function newClass_function($var1, $var2, $var3){ } } 

Вы вызываете функцию с переменными, которые не определены и необходимы для правильной работы функции.

 function hourly_function() { $newClass = new newClass(); $var1 = 'this should'; $var2 = 'work with'; $var3 = 'some content'; $newClass->newClass_function($var1, $var2, $var3); } 

Вы можете переместить эти переменные в __construct

 if ( ! class_exists('AClass')) { class AClass { function __construct( $var1 = null, $var2 = null, $var3 = null ) { //... } } } $instance = new AClass(1,2,3); 

Или метод __invoke :

 if ( ! class_exists('BClass')) { class BClass { function __invoke( $var1 = null, $var2 = null, $var3 = null ) { //... } } } $instance = new BClass(); $instance(1,2,3);