PluginProbe
Elementor Website Builder – more than just a page builder / 3.1.0-dev2
Elementor Website Builder – more than just a page builder v3.1.0-dev2
4.3.2 4.3.1 4.3.0 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 All 455 releases
← All changes | includes/frontend.php +55 -34 3.1.0-dev1 → 3.1.0-dev2 View file →
@@ -332,11 +332,20 @@
332 332 */
333 333 do_action( 'elementor/frontend/before_register_scripts' );
334 334
335 335 wp_register_script(
336 + 'elementor-webpack-runtime',
337 + $this->get_js_assets_url( 'webpack.runtime', 'assets/js/' ),
338 + [],
339 + ELEMENTOR_VERSION,
340 + true
341 + );
342 +
343 + wp_register_script(
336 344 'elementor-frontend-modules',
337 345 $this->get_js_assets_url( 'frontend-modules' ),
338 346 [
347 + 'elementor-webpack-runtime',
339 348 'jquery',
340 349 ],
341 350 ELEMENTOR_VERSION,
342 351 true
@@ -381,16 +390,8 @@
381 390 '0.2.1',
382 391 true
383 392 );
384 393
385 - wp_register_script(
386 - 'swiper',
387 - $this->get_js_assets_url( 'swiper', 'assets/lib/swiper/' ),
388 - [],
389 - '5.3.6',
390 - true
391 - );
392 -
393 394 /**
394 395 * @deprecated since 2.7.0 Use Swiper instead
395 396 */
396 397 wp_register_script(
@@ -435,15 +436,9 @@
435 436
436 437 wp_register_script(
437 438 'elementor-frontend',
438 439 $this->get_js_assets_url( 'frontend' ),
439 - [
440 - 'elementor-frontend-modules',
441 - 'elementor-dialog',
442 - 'elementor-waypoints',
443 - 'swiper',
444 - 'share-link',
445 - ],
440 + $this->get_elementor_frontend_dependencies(),
446 441 ELEMENTOR_VERSION,
447 442 true
448 443 );
449 444
@@ -535,10 +530,10 @@
535 530 }
536 531
537 532 $frontend_dependencies = [];
538 533
539 - if ( Plugin::instance()->get_legacy_mode( 'elementWrappers' ) ) {
540 - // If The Markup Legacy Mode is active, register the legacy CSS
534 + if ( ! Plugin::$instance->experiments->is_feature_active( 'e_dom_optimization' ) ) {
535 + // If The Dom Optimization feature is disabled, register the legacy CSS
541 536 wp_register_style(
542 537 'elementor-frontend-legacy',
543 538 ELEMENTOR_ASSETS_URL . 'css/frontend-legacy' . $direction_suffix . $min_suffix . '.css',
544 539 [],
@@ -584,8 +579,22 @@
584 579 do_action( 'elementor/frontend/before_enqueue_scripts' );
585 580
586 581 wp_enqueue_script( 'elementor-frontend' );
587 582
583 + wp_set_script_translations( 'elementor-frontend', 'elementor' );
584 +
585 + if ( ! $this->is_optimized_js_mode() ) {
586 + wp_enqueue_script(
587 + 'preloaded-elements-handlers',
588 + $this->get_js_assets_url( 'preloaded-elements-handlers', 'assets/js/' ),
589 + [
590 + 'elementor-frontend',
591 + ],
592 + ELEMENTOR_VERSION,
593 + true
594 + );
595 + }
596 +
588 597 $this->print_config();
589 598
590 599 /**
591 600 * After frontend enqueue scripts.
@@ -1156,30 +1165,15 @@
1156 1165 $settings = [
1157 1166 'environmentMode' => [
1158 1167 'edit' => $is_preview_mode,
1159 1168 'wpPreview' => is_preview(),
1169 + 'isScriptDebug' => Utils::is_script_debug(),
1170 + 'isOptimizedJS' => $this->is_optimized_js_mode(),
1160 1171 ],
1161 - 'i18n' => [
1162 - 'shareOnFacebook' => __( 'Share on Facebook', 'elementor' ),
1163 - 'shareOnTwitter' => __( 'Share on Twitter', 'elementor' ),
1164 - 'pinIt' => __( 'Pin it', 'elementor' ),
1165 - 'download' => __( 'Download', 'elementor' ),
1166 - 'downloadImage' => __( 'Download image', 'elementor' ),
1167 - 'fullscreen' => __( 'Fullscreen', 'elementor' ),
1168 - 'zoom' => __( 'Zoom', 'elementor' ),
1169 - 'share' => __( 'Share', 'elementor' ),
1170 - 'playVideo' => __( 'Play Video', 'elementor' ),
1171 - 'previous' => __( 'Previous', 'elementor' ),
1172 - 'next' => __( 'Next', 'elementor' ),
1173 - 'close' => __( 'Close', 'elementor' ),
1174 - ],
1175 1172 'is_rtl' => is_rtl(),
1176 1173 'breakpoints' => Responsive::get_breakpoints(),
1177 1174 'version' => ELEMENTOR_VERSION,
1178 1175 'is_static' => $this->is_static_render_mode(),
1179 - 'legacyMode' => [
1180 - 'elementWrappers' => Plugin::instance()->get_legacy_mode( 'elementWrappers' ),
1181 - ],
1182 1176 'urls' => [
1183 1177 'assets' => ELEMENTOR_ASSETS_URL,
1184 1178 ],
1185 1179 ];
@@ -1289,6 +1283,33 @@
1289 1283
1290 1284 $more_link = apply_filters( 'the_content_more_link', sprintf( ' <a href="%s#more-%s" class="more-link elementor-more-link">%s</a>', get_permalink(), $post->ID, $more_link_text ), $more_link_text );
1291 1285
1292 1286 return force_balance_tags( $parts['main'] ) . $more_link;
1287 + }
1288 +
1289 + private function is_optimized_js_mode() {
1290 + return 'enabled' === get_option( 'elementor_optimized_js_loading' );
1291 + }
1292 +
1293 + private function get_elementor_frontend_dependencies() {
1294 + $dependencies = [
1295 + 'elementor-frontend-modules',
1296 + 'elementor-dialog',
1297 + 'elementor-waypoints',
1298 + 'share-link',
1299 + ];
1300 +
1301 + if ( ! $this->is_optimized_js_mode() ) {
1302 + wp_register_script(
1303 + 'swiper',
1304 + $this->get_js_assets_url( 'swiper', 'assets/lib/swiper/' ),
1305 + [],
1306 + '5.3.6',
1307 + true
1308 + );
1309 +
1310 + $dependencies[] = 'swiper';
1311 + }
1312 +
1313 + return $dependencies;
1293 1314 }
1294 1315 }