2012-12-03 2 views
1

Я разрабатываю свой первый плагин в Wordpress. Затем одной из функций необходимо отправить электронное письмо.Ошибка в моем плагине с функцией wp_mail()

Но когда я вызвать функцию wp_mail() бросает мне эту ошибку:

Фатальная ошибка: Вызов неопределенной функции wp_mail()

Как я должен определить эту функцию в мой плагин? ?

Спасибо!

ответ

3

Возможно, вы пытаетесь что-то сделать, прежде чем загружать среду WordPress.

Все ваши действия должны быть прикреплены к некоторому крючку, например, «init» для действий на интерфейсе, «admin-init» на бэкэнд или «wp-ajax - {$ your-action-here } "для ajax.

Проверьте Codex документы: http://codex.wordpress.org/Plugin_API#Hooks.2C_Actions_and_Filters

+0

Также: http://www.nathanrice.net/blog/an-introduction-to-wordpress-action-hooks/ – felipelavinz

-1

wp_mail() функция не доступна только после действия plugins_loaded, так что если вы пытаетесь использовать его до этого момента он будет выдавать ошибку, потому что функция не определена в этой точке.

Чтобы вместо простого вызова wp_mail() вы должны подключить этот процесс к действию так, чтобы оно произошло после того, как функция была загружена.

Множество плагинов использует init как крюк действия для подключения своего действия. init приходит после plugins_loaded, поэтому, если вы используете это, он должен работать.

+0

wp_mail() не является плагином, он является подключаемой функцией! расположенный в «wp-includes \ pluggable.php», и он не будет работать, пока wp_config.php не будет загружен! – K3rnel31

+0

Хотя это правильный оператор, вызов wp_config.php в вашем плагине не является правильным способом убедиться, что wp_mail доступен для использования. Правильный способ - убедиться, что любой процесс, который вы используете wp_mail, происходит * после * действия plugins_loaded, после чего wp_mail будет загружен другим плагином ИЛИ путем включения из pluggable.php. – butlerblog

0

Просто включите wp-load.php и вперед!

require('../../../wp-load.php'); 

или

require('wp-load.php'); 

В зависимости, как ваш скрипт загружается.

Смежные вопросы