/** * Class Elementor_Form_Email_Attachments * * Send Elementor Form upload field as attachments to email */ class Elementor_Form_Email_Attachments { // Set to true if you want the files to be removed from // the server after they are sent by email const DELETE_ATTACHMENT_FROM_SERVER = false; public $attachments_array = []; public function __construct() { add_action( 'elementor_pro/forms/process', [ $this, 'init_form_email_attachments' ], 11, 2 ); } /** * @param \ElementorPro\Modules\Forms\Classes\Form_Record $record * @param \ElementorPro\Modules\Forms\Classes\Ajax_Handler $ajax_handler */ public function init_form_email_attachments( $record, $ajax_handler ) { // check if we have attachments $files = $record->get( 'files' ); if ( empty( $files ) ) { return; } // Store attachment in local var foreach ( $files as $id => $files_array ) { $this->attachments_array[] = $files_array['path'][0]; } // if local var has attachments setup filter hook if ( 0 < count( $this->attachments_array ) ) { add_filter( 'wp_mail', [ $this, 'wp_mail' ] ); add_action( 'elementor_pro/forms/new_record', [ $this, 'remove_wp_mail_filter' ], 5 ); } } public function remove_wp_mail_filter() { if ( self::DELETE_ATTACHMENT_FROM_SERVER ) { foreach ( $this->attachments_array as $uploaded_file ) { unlink( $uploaded_file ); } } $this->attachments_array = []; remove_filter( 'wp_mail', [ $this, 'wp_mail' ] ); } public function wp_mail( $args ) { $args['attachments'] = $this->attachments_array; return $args; } } new Elementor_Form_Email_Attachments();

The Weather Simulator: Bringing Weather Simulation to everyone

In IBISA we leverage technology to provide the best possible understanding and coverage of weather-related risk. Because of that we have developed a new innovative solution that we think could be useful outside the insurance world. Here is why. How does IBISA work? IBISA designs, distributes, and operates through a global turnkey platform climate and […]

Gini index of precipitation – new solution for drought detection?

Rapid environmental changes cause extreme event to happen more and more often. One of them is a severe drought which have devastating impact on vegetation, wildlife, water management, farming and ultimately food availability. From year to year the interest in detection of such an event is increasing which raises the question – how to detect […]