Я думаю, ваша проблема заключается в файл плагин загружен до WordPress может работать с его содержанием.
Если вы используете класс в главном файле плагина, как это:
class my_plugin
{
public static function init() {
$class = __CLASS__;
new $class;
}
function __construct() {
add_filter('registration_redirect', array($this, 'wpesov_registration_redirect'));
}
public function wpesov_registration_redirect() {
return home_url('/otp-verification');
}
}
add_action('plugins_loaded', array('my_plugin', 'init'));
и загружая его должным образом, то вы должны добавить эту функцию как метод вашего класса плагин и зарегистрировать фильтр в конструкторе. Существуют различные способы инициализации вашего плагина, и поскольку я не знаю, какой из них вы используете, я не могу помочь. Попробуйте реализовать вышеприведенный код или разместите здесь свою основную файловую структуру плагина, если она не будет работать или ваш init будет отличаться.
EDIT: или добавить статический метод в классе плагин и зарегистрировать фильтр снаружи:
class my_plugin
{
public static function init() {
$class = __CLASS__;
new $class;
}
public static function wpesov_registration_redirect() {
return home_url('/otp-verification');
}
}
// init plugin
add_action('plugins_loaded', array('my_plugin', 'init'));
// init registration_redirect hook
add_filter('registration_redirect', array('my_plugin', 'wpesov_registration_redirect'));
Пробовали, но пока не работал. В чем проблема? –
Как я спросил - вы уверены, что файл загружен и выполняет код? Например. если вы положили эхо «привет»; он распечатает его на странице сайта? – keyBeatz
Если вы можете, вы можете добавить '' в регистрационную форму, которая должна всегда работать. – keyBeatz