Wordpress toolkit php mailer error
Hi,
I have WHM with disabled php mail() function because security reason, but looks like that make problem in WP installation with Wordpress toolkit.
When I run installation process of new WP installation, I get error:
WordPress was installed with errors:
Is possible to disable send mail notification during the installation, or change PhpMailer settings to SMTP or something other to bypass this problem ? In documentation I didn't found anything. Thank you.
Fatal error: Uncaught Error: Call to undefined function PHPMailer\PHPMailer\mail() in /home/my_account/public_html/wp-includes/PHPMailer/PHPMailer.php:874
Stack trace:
#0 /home/my_account/public_html/wp-includes/PHPMailer/PHPMailer.php(1902): PHPMailer\PHPMailer\PHPMailer->mailPassthru('admin@mydomain...', 'New WordPress S...', 'Your new WordPr...', 'Date: Tue, 28 D...', NULL)
#1 /home/my_account/public_html/wp-includes/PHPMailer/PHPMailer.php(1642): PHPMailer\PHPMailer\PHPMailer->mailSend('Date: Tue, 28 D...', 'Your new WordPr...')
#2 /home/my_account/public_html/wp-includes/PHPMailer/PHPMailer.php(1473): PHPMailer\PHPMailer\PHPMailer->postSend()
#3 /home/my_account/public_html/wp-includes/pluggable.php(542): PHPMailer\PHPMailer\PHPMailer->send()
#4 /home/my_account/public_html/wp-admin/includes/upgrade.php(619): wp_mail(Array, 'New WordPress S...', 'Your new WordPr...', Array)
#5 /home/my_account/public_html/wp-admin/includes/upgrade.php(117): wp_new_blog_notification('Born To Be Wild', 'http://mydomain...', 1, 'The password yo...')
#6 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/core-command/src/Core_Command.php(618): wp_install('Born To Be Wild', 'admin', 'admin@mydomain...', true, '', 'XlkS^n...')
#7 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/core-command/src/Core_Command.php(401): Core_Command->do_install(Array)
#8 [internal function]: Core_Command->install(Array, Array)
#9 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php(100): call_user_func(Array, Array, Array)
#10 [internal function]: WP_CLI\Dispatcher\CommandFactory::WP_CLI\Dispatcher{closure}(Array, Array)
#11 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php(491): call_user_func(Object(Closure), Array, Array)
#12 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(399): WP_CLI\Dispatcher\Subcommand->invoke(Array, Array, Array)
#13 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(422): WP_CLI\Runner->run_command(Array, Array)
#14 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(1214): WP_CLI\Runner->run_command_and_exit()
#15 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php(23): WP_CLI\Runner->start()
#16 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/bootstrap.php(77): WP_CLI\Bootstrap\LaunchRunner->process(Object(WP_CLI\Bootstrap\BootstrapState))
#17 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/wp-cli.php(27): WP_CLI\bootstrap()
#18 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/vendor/wp-cli/wp-cli/php/boot-fs.php(17): require_once('/usr/local/cpan...')
#19 /usr/local/cpanel/3rdparty/wp-toolkit/plib/vendor/wp-cli/wpt-wp-cli.php(31): require_once('/usr/local/cpan...')
#20 Command line code(1): require('/usr/local/cpan...')
#21 {main}
thrown in /home/my_account/public_html/wp-includes/PHPMailer/PHPMailer.php on line 874
Error: There has been a critical error on this website.Learn more about troubleshooting WordPress. There has been a critical error on this website.Is possible to disable send mail notification during the installation, or change PhpMailer settings to SMTP or something other to bypass this problem ? In documentation I didn't found anything. Thank you.
-
Thank you @cPanelAnthony but that is not possible because users manage own installation. No other options? 0 -
Thank you @cPanelAnthony but that is not possible because users manage own installation. No other options?
The only other option at this time would be setting the domain to PHP 7.4 temporarily.0 -
But that also is not option because all PHP version on server have disabled mail() function. 0 -
The PHP 7.4 should work fine even if the mail function is disabled, since this issue is only with the PHP 8 at this stage. It has been verified that this is due to a change in the way PHP 8 handles 'disable_functions'. Prior versions of PHP would throw a warning when a disabled function was attempting to be used. In PHP 8 and later, attempting to use a disabled function will throw a standard error for an undeclared function with "Fatal error". 0 -
I guess (and baring in mind it is 3.30am for me at the moment) if you use the PHP auto_prepend_file setting in php ini to load in a file which has a dummy function mail(...
then the problem might be reduced (you could also make the function call PHPMailer).0
Please sign in to leave a comment.
Comments
6 comments