: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
* Newsletter Provider Base class
* @copyright Copyright (c) 2023, Code Atlantic LLC
if ( ! defined( 'ABSPATH' ) ) {
* Class PUM_Newsletter_Provider
abstract class PUM_Newsletter_Provider extends PUM_Abstract_Provider {
public function __construct() {
remove_filter( 'pum_settings_fields', [ $this, 'register_settings' ] );
add_filter( 'pum_settings_fields', [ $this, 'process_deprecated_settings_fields' ] );
// add_filter( 'pum_newsletter_settings', array( $this, 'register_settings' ) );
* Process deprecated settings field registration from extensions that haven't updated.
public function process_deprecated_settings_fields( $fields ) {
$fields['subscriptions'][ $this->id ] = $this->register_settings();