PluginProbe
Elementor Website Builder – more than just a page builder / 3.9.2
Elementor Website Builder – more than just a page builder v3.9.2
4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 All 452 releases
← All changes | includes/template-library/classes/class-import-images.php +3 -55 4.2.43.9.2 View file →
@@ -102,9 +102,9 @@
102 102 * @since 3.2.0 New `$parent_post_id` option added
103 103 * @access public
104 104 *
105 105 * @param array $attachment The attachment.
106 - * @param int $parent_post_id Optional.
106 + * @param int $parent_post_id Optional
107 107 *
108 108 * @return false|array Imported image data, or false.
109 109 */
110 110 public function import( $attachment, $parent_post_id = null ) {
@@ -110,14 +110,10 @@
110 110 public function import( $attachment, $parent_post_id = null ) {
111 111 if ( isset( $attachment['tmp_name'] ) ) {
112 112 // Used when called to import a directly-uploaded file.
113 113 $filename = $attachment['name'];
114 - $file_content = false;
115 114
116 - // security validation in case the tmp_name has been tampered with
117 - if ( is_uploaded_file( $attachment['tmp_name'] ) ) {
118 - $file_content = Utils::file_get_contents( $attachment['tmp_name'] );
119 - }
115 + $file_content = Utils::file_get_contents( $attachment['tmp_name'] );
120 116 } else {
121 117 // Used when attachment information is passed to this method.
122 118 if ( ! empty( $attachment['id'] ) ) {
123 119 $saved_image = $this->get_saved_image( $attachment );
@@ -159,9 +155,9 @@
159 155
160 156 $svg_handler = Plugin::$instance->uploads_manager->get_file_type_handlers( 'svg' );
161 157
162 158 $file_content = $svg_handler->sanitizer( $file_content );
163 - }
159 + };
164 160
165 161 $upload = wp_upload_bits(
166 162 $filename,
167 163 null,
@@ -211,56 +207,8 @@
211 207 $this->_replace_image_ids[ $attachment['id'] ] = $new_attachment;
212 208 }
213 209
214 210 return $new_attachment;
215 - }
216 -
217 - /**
218 - * Import local file.
219 - *
220 - * Import a local file directly to WordPress media library.
221 - * Used for importing files that are already downloaded locally (e.g., from extracted ZIP).
222 - *
223 - * @since 3.33.0
224 - * @access public
225 - *
226 - * @param string $local_file_path The local file path.
227 - * @param int $parent_post_id Optional. Parent post ID.
228 - *
229 - * @return false|array Imported image data, or false on failure.
230 - */
231 - public function import_local_file( $local_file_path, $parent_post_id = null ) {
232 - global $wp_filesystem;
233 -
234 - if ( ! $wp_filesystem->exists( $local_file_path ) ) {
235 - return false;
236 - }
237 -
238 - if ( ! function_exists( 'media_handle_sideload' ) ) {
239 - require_once ABSPATH . 'wp-admin/includes/media.php';
240 - }
241 -
242 - if ( ! function_exists( 'wp_generate_attachment_metadata' ) ) {
243 - require_once ABSPATH . 'wp-admin/includes/image.php';
244 - }
245 -
246 - $file_array = [
247 - 'name' => basename( $local_file_path ),
248 - 'tmp_name' => $local_file_path,
249 - ];
250 -
251 - $attachment_id = media_handle_sideload( $file_array, $parent_post_id );
252 -
253 - if ( is_wp_error( $attachment_id ) ) {
254 - return false;
255 - }
256 -
257 - apply_filters( 'elementor/template_library/import_images/new_attachment', $attachment_id );
258 -
259 - return [
260 - 'id' => $attachment_id,
261 - 'url' => wp_get_attachment_url( $attachment_id ),
262 - ];
263 211 }
264 212
265 213 /**
266 214 * Template library import images constructor.