PluginProbe
Elementor Website Builder – more than just a page builder / 3.7.0
Elementor Website Builder – more than just a page builder v3.7.0
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 4.0.7 All 451 releases
elementor / includes / admin-templates / new-template.php

new-template.php in Elementor Website Builder – more than just a page builder 3.7.0, at includes/admin-templates/new-template.php

100 lines 4.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace Elementor;
3
4 use Elementor\Core\Base\Document;
5
6 if ( ! defined( 'ABSPATH' ) ) {
7 exit; // Exit if accessed directly
8 }
9
10 $document_types = Plugin::$instance->documents->get_document_types();
11
12 $types = [];
13
14 $selected = get_query_var( 'elementor_library_type' );
15
16 foreach ( $document_types as $document_type ) {
17 if ( $document_type::get_property( 'show_in_library' ) ) {
18 /**
19 * @var Document $instance
20 */
21 $instance = new $document_type();
22
23 $types[ $instance->get_name() ] = $document_type::get_title();
24 }
25 }
26
27 /**
28 * Create new template library dialog types.
29 *
30 * Filters the dialog types when printing new template dialog.
31 *
32 * @since 2.0.0
33 *
34 * @param array $types Types data.
35 * @param Document $document_types Document types.
36 */
37 $types = apply_filters( 'elementor/template-library/create_new_dialog_types', $types, $document_types );
38 ?>
39 <script type="text/template" id="tmpl-elementor-new-template">
40 <div id="elementor-new-template__description">
41 <div id="elementor-new-template__description__title"><?php
42 printf(
43 /* translators: %1$s Span open tag, %2$s: Span close tag. */
44 esc_html__( 'Templates Help You %1$sWork Efficiently%2$s', 'elementor' ),
45 '<span>',
46 '</span>'
47 );
48 ?></div>
49 <div id="elementor-new-template__description__content"><?php echo esc_html__( 'Use templates to create the different pieces of your site, and reuse them with one click whenever needed.', 'elementor' ); ?></div>
50 <?php
51 /*
52 <div id="elementor-new-template__take_a_tour">
53 <i class="eicon-play-o"></i>
54 <a href="#"><?php echo esc_html__( 'Take The Video Tour', 'elementor\' ); ?></a>
55 </div>
56 */
57 ?>
58 </div>
59 <form id="elementor-new-template__form" action="<?php esc_url( admin_url( '/edit.php' ) ); ?>">
60 <input type="hidden" name="post_type" value="elementor_library">
61 <input type="hidden" name="action" value="elementor_new_post">
62 <?php // PHPCS - a nonce doesn't have to be escaped. ?>
63 <input type="hidden" name="_wpnonce" value="<?php echo wp_create_nonce( 'elementor_action_new_post' ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>">
64 <div id="elementor-new-template__form__title"><?php echo esc_html__( 'Choose Template Type', 'elementor' ); ?></div>
65 <div id="elementor-new-template__form__template-type__wrapper" class="elementor-form-field">
66 <label for="elementor-new-template__form__template-type" class="elementor-form-field__label"><?php echo esc_html__( 'Select the type of template you want to work on', 'elementor' ); ?></label>
67 <div class="elementor-form-field__select__wrapper">
68 <select id="elementor-new-template__form__template-type" class="elementor-form-field__select" name="template_type" required>
69 <option value=""><?php echo esc_html__( 'Select', 'elementor' ); ?>...</option>
70 <?php
71 foreach ( $types as $value => $type_title ) {
72 printf( '<option value="%1$s" %2$s>%3$s</option>', esc_attr( $value ), selected( $selected, $value, false ), esc_html( $type_title ) );
73 }
74 ?>
75 </select>
76 </div>
77 </div>
78 <?php
79 /**
80 * Template library dialog fields.
81 *
82 * Fires after Elementor template library dialog fields are displayed.
83 *
84 * @since 2.0.0
85 */
86 do_action( 'elementor/template-library/create_new_dialog_fields' );
87 ?>
88
89 <div id="elementor-new-template__form__post-title__wrapper" class="elementor-form-field">
90 <label for="elementor-new-template__form__post-title" class="elementor-form-field__label">
91 <?php echo esc_html__( 'Name your template', 'elementor' ); ?>
92 </label>
93 <div class="elementor-form-field__text__wrapper">
94 <input type="text" placeholder="<?php echo esc_attr__( 'Enter template name (optional)', 'elementor' ); ?>" id="elementor-new-template__form__post-title" class="elementor-form-field__text" name="post_data[post_title]">
95 </div>
96 </div>
97 <button id="elementor-new-template__form__submit" class="elementor-button elementor-button-success"><?php echo esc_html__( 'Create Template', 'elementor' ); ?></button>
98 </form>
99 </script>
100