Version Description
General
- Release "Post Featured Image" as a free widget!!
New Widgets
- Image Accordion (Pro)
- Before After Effect (Pro)
- Notes (Pro)
Download this release
Release Info
Developer | ramiy |
Plugin | Press Elements – Widgets for Elementor |
Version | 1.6.0 |
Comparing to | |
See all releases |
Code changes from version 1.4.0 to 1.6.0
- assets/css/before-after-effect.css +182 -0
- assets/css/image-accordion.css +35 -0
- assets/css/notes.css +18 -0
- assets/js/before-after-effect.js +22 -0
- language/press-elements.pot +464 -160
- {freemius → libs/freemius}/LICENSE.txt +0 -0
- {freemius → libs/freemius}/README.md +0 -0
- {freemius → libs/freemius}/assets/css/admin/account.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/add-ons.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/checkout.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/common.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/connect.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/deactivation-feedback.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/debug.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/dialog-boxes.css +0 -0
- {freemius → libs/freemius}/assets/css/admin/license-activation.css +0 -0
- {freemius → libs/freemius}/assets/css/common.css +0 -0
- {freemius → libs/freemius}/assets/img/plugin-icon.png +0 -0
- {freemius → libs/freemius}/assets/img/press-elements.png +0 -0
- {freemius → libs/freemius}/assets/index.php +0 -0
- {freemius → libs/freemius}/assets/js/nojquery.ba-postmessage.js +0 -0
- {freemius → libs/freemius}/assets/js/nojquery.ba-postmessage.min.js +0 -0
- {freemius → libs/freemius}/assets/js/postmessage.js +0 -0
- {freemius → libs/freemius}/assets/scss/_colors.scss +0 -0
- {freemius → libs/freemius}/assets/scss/_functions.scss +0 -0
- {freemius → libs/freemius}/assets/scss/_load.scss +0 -0
- {freemius → libs/freemius}/assets/scss/_mixins.scss +0 -0
- {freemius → libs/freemius}/assets/scss/_start.scss +0 -0
- {freemius → libs/freemius}/assets/scss/_vars.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/_deactivation-feedback.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/_license-activation.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/_license-key-resend.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/_modal-common.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/account.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/add-ons.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/checkout.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/common.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/connect.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/debug.scss +0 -0
- {freemius → libs/freemius}/assets/scss/admin/dialog-boxes.scss +0 -0
- {freemius → libs/freemius}/config.php +0 -0
- {freemius → libs/freemius}/includes/class-freemius-abstract.php +0 -0
- {freemius → libs/freemius}/includes/class-freemius.php +0 -0
- {freemius → libs/freemius}/includes/class-fs-api.php +0 -0
- {freemius → libs/freemius}/includes/class-fs-logger.php +0 -0
- {freemius → libs/freemius}/includes/class-fs-plugin-updater.php +0 -0
- {freemius → libs/freemius}/includes/class-fs-security.php +0 -0
- {freemius → libs/freemius}/includes/debug/class-fs-debug-bar-panel.php +0 -0
- {freemius → libs/freemius}/includes/debug/debug-bar-start.php +0 -0
- {freemius → libs/freemius}/includes/debug/index.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-billing.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-entity.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-payment.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-plugin-info.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-plugin-license.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-plugin-plan.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-plugin-tag.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-plugin.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-pricing.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-scope-entity.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-site.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-subscription.php +0 -0
- {freemius → libs/freemius}/includes/entities/class-fs-user.php +0 -0
- {freemius → libs/freemius}/includes/entities/index.php +0 -0
- {freemius → libs/freemius}/includes/fs-core-functions.php +0 -0
- {freemius → libs/freemius}/includes/fs-essential-functions.php +0 -0
- {freemius → libs/freemius}/includes/fs-plugin-info-dialog.php +0 -0
- {freemius → libs/freemius}/includes/i18n.php +0 -0
- {freemius → libs/freemius}/includes/index.php +0 -0
- {freemius → libs/freemius}/includes/l10n.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-admin-menu-manager.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-admin-notice-manager.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-cache-manager.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-key-value-storage.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-license-manager.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-option-manager.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-plan-manager.php +0 -0
- {freemius → libs/freemius}/includes/managers/class-fs-plugin-manager.php +0 -0
- {freemius → libs/freemius}/includes/managers/index.php +0 -0
- {freemius → libs/freemius}/includes/sdk/Exceptions/ArgumentNotExistException.php +0 -0
- {freemius → libs/freemius}/includes/sdk/Exceptions/EmptyArgumentException.php +0 -0
- {freemius → libs/freemius}/includes/sdk/Exceptions/Exception.php +0 -0
- {freemius → libs/freemius}/includes/sdk/Exceptions/InvalidArgumentException.php +0 -0
- {freemius → libs/freemius}/includes/sdk/Exceptions/OAuthException.php +0 -0
- {freemius → libs/freemius}/includes/sdk/Exceptions/index.php +0 -0
- {freemius → libs/freemius}/includes/sdk/Freemius.php +0 -0
- {freemius → libs/freemius}/includes/sdk/FreemiusBase.php +0 -0
- {freemius → libs/freemius}/includes/sdk/LICENSE.txt +0 -0
- {freemius → libs/freemius}/includes/sdk/index.php +0 -0
- {freemius → libs/freemius}/includes/supplements/fs-essential-functions-1.1.7.1.php +0 -0
- {freemius → libs/freemius}/includes/supplements/index.php +0 -0
- {freemius → libs/freemius}/index.php +0 -0
- {freemius → libs/freemius}/languages/freemius-da_DK.mo +0 -0
- {freemius → libs/freemius}/languages/freemius-da_DK.po +0 -0
- {freemius → libs/freemius}/languages/freemius-en.mo +0 -0
- {freemius → libs/freemius}/languages/freemius-en.po +0 -0
- {freemius → libs/freemius}/languages/freemius-he.mo +0 -0
- {freemius → libs/freemius}/languages/freemius-he.po +0 -0
- {freemius → libs/freemius}/languages/freemius-it_IT.mo +0 -0
- {freemius → libs/freemius}/languages/freemius-it_IT.po +0 -0
- {freemius → libs/freemius}/languages/freemius-ja_JP.mo +0 -0
- {freemius → libs/freemius}/languages/freemius-ja_JP.po +0 -0
- {freemius → libs/freemius}/languages/freemius.pot +0 -0
- {freemius → libs/freemius}/languages/index.php +0 -0
- {freemius → libs/freemius}/require.php +0 -0
- {freemius → libs/freemius}/start.php +0 -0
- {freemius → libs/freemius}/templates/account.php +0 -0
- {freemius → libs/freemius}/templates/add-ons.php +0 -0
- {freemius → libs/freemius}/templates/add-trial-to-pricing.php +0 -0
- {freemius → libs/freemius}/templates/admin-notice.php +0 -0
- {freemius → libs/freemius}/templates/all-admin-notice.php +0 -0
- {freemius → libs/freemius}/templates/billing.php +0 -0
- {freemius → libs/freemius}/templates/checkout-legacy.php +0 -0
- {freemius → libs/freemius}/templates/checkout.php +0 -0
- {freemius → libs/freemius}/templates/connect.php +0 -0
- {freemius → libs/freemius}/templates/contact.php +0 -0
- {freemius → libs/freemius}/templates/debug.php +0 -0
- {freemius → libs/freemius}/templates/debug/api-calls.php +0 -0
- {freemius → libs/freemius}/templates/debug/index.php +0 -0
- {freemius → libs/freemius}/templates/debug/logger.php +0 -0
- {freemius → libs/freemius}/templates/debug/plugins-themes-sync.php +0 -0
- {freemius → libs/freemius}/templates/debug/scheduled-crons.php +0 -0
- {freemius → libs/freemius}/templates/email.php +0 -0
- {freemius → libs/freemius}/templates/firewall-issues-js.php +0 -0
- {freemius → libs/freemius}/templates/forms/deactivation/contact.php +0 -0
- {freemius → libs/freemius}/templates/forms/deactivation/form.php +0 -0
- {freemius → libs/freemius}/templates/forms/deactivation/index.php +0 -0
- {freemius → libs/freemius}/templates/forms/deactivation/retry-skip.php +0 -0
- {freemius → libs/freemius}/templates/forms/index.php +0 -0
- {freemius → libs/freemius}/templates/forms/license-activation.php +0 -0
- {freemius → libs/freemius}/templates/forms/optout.php +0 -0
- {freemius → libs/freemius}/templates/forms/resend-key.php +0 -0
- {freemius → libs/freemius}/templates/forms/trial-start.php +0 -0
- {freemius → libs/freemius}/templates/index.php +0 -0
- {freemius → libs/freemius}/templates/plugin-icon.php +0 -0
- {freemius → libs/freemius}/templates/plugin-info/description.php +0 -0
- {freemius → libs/freemius}/templates/plugin-info/features.php +0 -0
- {freemius → libs/freemius}/templates/plugin-info/index.php +0 -0
- {freemius → libs/freemius}/templates/plugin-info/screenshots.php +0 -0
- {freemius → libs/freemius}/templates/powered-by.php +0 -0
- {freemius → libs/freemius}/templates/pricing.php +0 -0
- {freemius → libs/freemius}/templates/sticky-admin-notice-js.php +0 -0
- libs/twentytwenty/jquery.event.move.js +586 -0
- libs/twentytwenty/jquery.twentytwenty.js +105 -0
- press-elements-admin.php +36 -9
- press-elements-freemius.php +19 -3
- press-elements-plugin.php +173 -156
- press-elements.php +21 -13
- readme.txt +48 -28
- screenshot-10.png +0 -0
- screenshot-11.png +0 -0
- screenshot-12.png +0 -0
- screenshot-13.png +0 -0
- screenshot-14.png +0 -0
- screenshot-7.png +0 -0
- screenshot-8.png +0 -0
- screenshot-9.png +0 -0
- widgets/advanced-custom-fields.php +27 -21
- widgets/before-after-effect.php +77 -0
- widgets/flickr.php +66 -0
- widgets/gravatar.php +6 -21
- widgets/image-accordion.php +73 -0
- widgets/notes.php +70 -0
- widgets/pinterest.php +105 -0
- widgets/post-author.php +15 -7
- widgets/post-custom-field.php +6 -21
- widgets/post-date.php +11 -3
- widgets/post-excerpt.php +12 -4
- widgets/post-featured-image.php +362 -74
- widgets/post-terms.php +1 -1
- widgets/post-title.php +12 -4
- widgets/site-description.php +3 -3
- widgets/site-logo.php +3 -3
- widgets/site-title.php +3 -3
assets/css/before-after-effect.css
ADDED
@@ -0,0 +1,182 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* Container */
|
2 |
+
|
3 |
+
.twentytwenty-container {
|
4 |
+
position: relative;
|
5 |
+
overflow: hidden;
|
6 |
+
z-index: 0;
|
7 |
+
-webkit-box-sizing: content-box;
|
8 |
+
-moz-box-sizing: content-box;
|
9 |
+
box-sizing: content-box;
|
10 |
+
-webkit-user-select: none;
|
11 |
+
-moz-user-select: none;
|
12 |
+
}
|
13 |
+
.twentytwenty-container * {
|
14 |
+
-webkit-box-sizing: content-box;
|
15 |
+
-moz-box-sizing: content-box;
|
16 |
+
box-sizing: content-box;
|
17 |
+
}
|
18 |
+
.twentytwenty-container img {
|
19 |
+
position: absolute;
|
20 |
+
top: 0;
|
21 |
+
display: block;
|
22 |
+
max-width: 100%;
|
23 |
+
}
|
24 |
+
.twentytwenty-container.active .twentytwenty-overlay .twentytwenty-before-label,
|
25 |
+
.twentytwenty-container.active .twentytwenty-overlay .twentytwenty-after-label,
|
26 |
+
.twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-before-label,
|
27 |
+
.twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-after-label {
|
28 |
+
opacity: 0;
|
29 |
+
}
|
30 |
+
|
31 |
+
/* Overlay */
|
32 |
+
|
33 |
+
.twentytwenty-overlay {
|
34 |
+
position: absolute;
|
35 |
+
top: 0;
|
36 |
+
width: 100%;
|
37 |
+
height: 100%;
|
38 |
+
z-index: 25;
|
39 |
+
-webkit-transition-duration: 0.5s;
|
40 |
+
-moz-transition-duration: 0.5s;
|
41 |
+
transition-duration: 0.5s;
|
42 |
+
|
43 |
+
-webkit-transition-property: background;
|
44 |
+
-moz-transition-property: background;
|
45 |
+
transition-property: background;
|
46 |
+
}
|
47 |
+
.twentytwenty-overlay:hover .twentytwenty-after-label {
|
48 |
+
opacity: 1;
|
49 |
+
}
|
50 |
+
.twentytwenty-overlay:hover .twentytwenty-before-label {
|
51 |
+
opacity: 1;
|
52 |
+
}
|
53 |
+
|
54 |
+
/* Title / Label */
|
55 |
+
|
56 |
+
.twentytwenty-before {
|
57 |
+
z-index: 20;
|
58 |
+
}
|
59 |
+
.twentytwenty-after {
|
60 |
+
z-index: 10;
|
61 |
+
}
|
62 |
+
.twentytwenty-before-label,
|
63 |
+
.twentytwenty-after-label {
|
64 |
+
position: absolute;
|
65 |
+
top: 0;
|
66 |
+
width: 100%;
|
67 |
+
height: 100%;
|
68 |
+
opacity: 0;
|
69 |
+
-webkit-transition-duration: 0.5s;
|
70 |
+
-moz-transition-duration: 0.5s;
|
71 |
+
transition-duration: 0.5s;
|
72 |
+
-webkit-transition-property: opacity;
|
73 |
+
-moz-transition-property: opacity;
|
74 |
+
transition-property: opacity;
|
75 |
+
}
|
76 |
+
.twentytwenty-before-label:before,
|
77 |
+
.twentytwenty-after-label:before {
|
78 |
+
position: absolute;
|
79 |
+
}
|
80 |
+
.twentytwenty-horizontal .twentytwenty-before-label:before {
|
81 |
+
left: 0;
|
82 |
+
}
|
83 |
+
.twentytwenty-horizontal .twentytwenty-after-label:before {
|
84 |
+
right: 0;
|
85 |
+
}
|
86 |
+
.twentytwenty-vertical .twentytwenty-before-label:before {
|
87 |
+
top: 0;
|
88 |
+
}
|
89 |
+
.twentytwenty-vertical .twentytwenty-after-label:before {
|
90 |
+
bottom: 0;
|
91 |
+
}
|
92 |
+
|
93 |
+
/* Handle */
|
94 |
+
|
95 |
+
.twentytwenty-horizontal .twentytwenty-handle:before,
|
96 |
+
.twentytwenty-horizontal .twentytwenty-handle:after,
|
97 |
+
.twentytwenty-vertical .twentytwenty-handle:before,
|
98 |
+
.twentytwenty-vertical .twentytwenty-handle:after {
|
99 |
+
content: " ";
|
100 |
+
display: block;
|
101 |
+
position: absolute;
|
102 |
+
z-index: 30;
|
103 |
+
-webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
|
104 |
+
-moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
|
105 |
+
box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
|
106 |
+
}
|
107 |
+
.twentytwenty-horizontal .twentytwenty-handle:before,
|
108 |
+
.twentytwenty-horizontal .twentytwenty-handle:after {
|
109 |
+
height: 9999px;
|
110 |
+
left: 50%;
|
111 |
+
}
|
112 |
+
.twentytwenty-vertical .twentytwenty-handle:before,
|
113 |
+
.twentytwenty-vertical .twentytwenty-handle:after {
|
114 |
+
width: 9999px;
|
115 |
+
top: 50%;
|
116 |
+
}
|
117 |
+
.twentytwenty-handle {
|
118 |
+
height: 40px;
|
119 |
+
width: 40px;
|
120 |
+
position: absolute;
|
121 |
+
left: 50%;
|
122 |
+
top: 50%;
|
123 |
+
margin-left: -22px;
|
124 |
+
margin-top: -22px;
|
125 |
+
border-style: solid;
|
126 |
+
z-index: 40;
|
127 |
+
cursor: pointer;
|
128 |
+
-webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
|
129 |
+
-moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
|
130 |
+
box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
|
131 |
+
}
|
132 |
+
.twentytwenty-horizontal .twentytwenty-handle:before {
|
133 |
+
bottom: 50%;
|
134 |
+
margin-bottom: 22px;
|
135 |
+
}
|
136 |
+
.twentytwenty-horizontal .twentytwenty-handle:after {
|
137 |
+
top: 50%;
|
138 |
+
margin-top: 22px;
|
139 |
+
}
|
140 |
+
.twentytwenty-vertical .twentytwenty-handle:before {
|
141 |
+
left: 50%;
|
142 |
+
margin-left: 22px;
|
143 |
+
}
|
144 |
+
.twentytwenty-vertical .twentytwenty-handle:after {
|
145 |
+
right: 50%;
|
146 |
+
margin-right: 22px;
|
147 |
+
}
|
148 |
+
.twentytwenty-left-arrow, .twentytwenty-right-arrow,
|
149 |
+
.twentytwenty-up-arrow, .twentytwenty-down-arrow {
|
150 |
+
width: 0;
|
151 |
+
height: 0;
|
152 |
+
border: 6px inset transparent;
|
153 |
+
position: absolute;
|
154 |
+
}
|
155 |
+
.twentytwenty-left-arrow, .twentytwenty-right-arrow {
|
156 |
+
top: 50%;
|
157 |
+
margin-top: -6px;
|
158 |
+
}
|
159 |
+
.twentytwenty-up-arrow, .twentytwenty-down-arrow {
|
160 |
+
left: 50%;
|
161 |
+
margin-left: -6px;
|
162 |
+
}
|
163 |
+
.twentytwenty-left-arrow {
|
164 |
+
border-right: 6px solid white;
|
165 |
+
left: 50%;
|
166 |
+
margin-left: -17px;
|
167 |
+
}
|
168 |
+
.twentytwenty-right-arrow {
|
169 |
+
border-left: 6px solid white;
|
170 |
+
right: 50%;
|
171 |
+
margin-right: -17px;
|
172 |
+
}
|
173 |
+
.twentytwenty-up-arrow {
|
174 |
+
border-bottom: 6px solid white;
|
175 |
+
top: 50%;
|
176 |
+
margin-top: -17px;
|
177 |
+
}
|
178 |
+
.twentytwenty-down-arrow {
|
179 |
+
border-top: 6px solid white;
|
180 |
+
bottom: 50%;
|
181 |
+
margin-bottom: -17px;
|
182 |
+
}
|
assets/css/image-accordion.css
ADDED
@@ -0,0 +1,35 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.press-elements-image-accordion {
|
2 |
+
width: 100%;
|
3 |
+
overflow: hidden;
|
4 |
+
margin: 0 auto;
|
5 |
+
}
|
6 |
+
.press-elements-image-accordion ul {
|
7 |
+
width: 100%;
|
8 |
+
display: table;
|
9 |
+
table-layout: fixed;
|
10 |
+
margin: 0;
|
11 |
+
padding: 0;
|
12 |
+
}
|
13 |
+
.press-elements-image-accordion ul li {
|
14 |
+
display: table-cell;
|
15 |
+
position: relative;
|
16 |
+
background-repeat: no-repeat;
|
17 |
+
background-size: cover;
|
18 |
+
}
|
19 |
+
.press-elements-image-accordion ul li div {
|
20 |
+
display: none;
|
21 |
+
overflow: hidden;
|
22 |
+
opacity: 0;
|
23 |
+
transition-delay: 1s;
|
24 |
+
}
|
25 |
+
.press-elements-image-accordion ul li div * {
|
26 |
+
position: relative;
|
27 |
+
width: 100%;
|
28 |
+
margin: 0;
|
29 |
+
overflow: hidden;
|
30 |
+
}
|
31 |
+
.press-elements-image-accordion ul:hover li:hover div {
|
32 |
+
display: inline-block;
|
33 |
+
opacity: 1;
|
34 |
+
transition: opacity 500ms;
|
35 |
+
}
|
assets/css/notes.css
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.press-elements-notes {
|
2 |
+
position: relative;
|
3 |
+
display: inline-block;
|
4 |
+
vertical-align: top;
|
5 |
+
width: 100%;
|
6 |
+
max-width: 100%;
|
7 |
+
}
|
8 |
+
.press-elements-notes:before {
|
9 |
+
display: block;
|
10 |
+
content: "";
|
11 |
+
position: absolute;
|
12 |
+
top: -15px;
|
13 |
+
width: 50%;
|
14 |
+
height: 30px;
|
15 |
+
margin: 0 auto;
|
16 |
+
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
|
17 |
+
border-radius: 6px/20px 0;
|
18 |
+
}
|
assets/js/before-after-effect.js
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
( function( $ ) {
|
2 |
+
|
3 |
+
var PressElementsBeforeAfterEffect = function( $scope, $ ) {
|
4 |
+
|
5 |
+
// Apply the dragging event
|
6 |
+
$scope.find( '.twentytwenty-container' ).each( function() {
|
7 |
+
|
8 |
+
$(this).twentytwenty({
|
9 |
+
default_offset_pct: $(this).data( 'starting-position' ),
|
10 |
+
orientation: $(this).data( 'orientation' )
|
11 |
+
});
|
12 |
+
|
13 |
+
});
|
14 |
+
|
15 |
+
}
|
16 |
+
|
17 |
+
// Make sure you run this code under Elementor.
|
18 |
+
$( window ).on( 'elementor/frontend/init', function() {
|
19 |
+
elementorFrontend.hooks.addAction( 'frontend/element_ready/before-after-effect.default', PressElementsBeforeAfterEffect );
|
20 |
+
} );
|
21 |
+
|
22 |
+
} )( jQuery );
|
language/press-elements.pot
CHANGED
@@ -15,11 +15,11 @@ msgstr ""
|
|
15 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
16 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
17 |
|
18 |
-
#: press-elements-admin.php:119, press-elements-admin.php:
|
19 |
msgid "Press Elements - Widgets for Elementor"
|
20 |
msgstr ""
|
21 |
|
22 |
-
#: press-elements-admin.php:121, press-elements.php:
|
23 |
msgid "Press Elements"
|
24 |
msgstr ""
|
25 |
|
@@ -27,475 +27,783 @@ msgstr ""
|
|
27 |
msgid "About"
|
28 |
msgstr ""
|
29 |
|
30 |
-
#: press-elements-admin.php:165, press-elements-admin.php:
|
31 |
msgid "Getting Started"
|
32 |
msgstr ""
|
33 |
|
34 |
-
#: press-elements-admin.php:167, press-elements-admin.php:
|
35 |
msgid "Changelog"
|
36 |
msgstr ""
|
37 |
|
38 |
#: press-elements-admin.php:169
|
39 |
-
msgid "
|
40 |
msgstr ""
|
41 |
|
42 |
-
#: press-elements-admin.php:
|
43 |
-
msgid "
|
44 |
msgstr ""
|
45 |
|
46 |
-
#: press-elements-admin.php:
|
47 |
-
msgid "
|
48 |
msgstr ""
|
49 |
|
50 |
-
#: press-elements-admin.php:
|
51 |
-
msgid "
|
|
|
|
|
|
|
|
|
52 |
msgstr ""
|
53 |
|
54 |
#: press-elements-admin.php:285
|
55 |
-
msgid "
|
56 |
msgstr ""
|
57 |
|
58 |
#: press-elements-admin.php:289
|
59 |
-
msgid "
|
60 |
msgstr ""
|
61 |
|
62 |
#: press-elements-admin.php:293
|
63 |
-
msgid "
|
64 |
msgstr ""
|
65 |
|
66 |
#: press-elements-admin.php:297
|
67 |
-
msgid "
|
68 |
msgstr ""
|
69 |
|
70 |
#: press-elements-admin.php:301
|
71 |
-
msgid "
|
72 |
msgstr ""
|
73 |
|
74 |
#: press-elements-admin.php:305
|
75 |
-
msgid "
|
76 |
msgstr ""
|
77 |
|
78 |
#: press-elements-admin.php:309
|
79 |
-
msgid "
|
80 |
msgstr ""
|
81 |
|
82 |
#: press-elements-admin.php:313
|
83 |
-
msgid "
|
84 |
msgstr ""
|
85 |
|
86 |
#: press-elements-admin.php:317
|
87 |
-
msgid "
|
88 |
msgstr ""
|
89 |
|
90 |
#: press-elements-admin.php:321
|
91 |
-
msgid "
|
92 |
msgstr ""
|
93 |
|
94 |
#: press-elements-admin.php:325
|
95 |
-
msgid "
|
96 |
msgstr ""
|
97 |
|
98 |
#: press-elements-admin.php:329
|
99 |
-
msgid "
|
100 |
msgstr ""
|
101 |
|
102 |
#: press-elements-admin.php:333
|
103 |
-
msgid "
|
104 |
msgstr ""
|
105 |
|
106 |
#: press-elements-admin.php:337
|
|
|
|
|
|
|
|
|
107 |
msgid "Included Widgets"
|
108 |
msgstr ""
|
109 |
|
110 |
-
#: press-elements-admin.php:
|
111 |
msgid "Site Elements:"
|
112 |
msgstr ""
|
113 |
|
114 |
-
#: press-elements-admin.php:
|
115 |
msgid "Site Title"
|
116 |
msgstr ""
|
117 |
|
118 |
-
#: press-elements-admin.php:
|
119 |
msgid "Site Description"
|
120 |
msgstr ""
|
121 |
|
122 |
-
#: press-elements-admin.php:
|
123 |
msgid "Site Logo"
|
124 |
msgstr ""
|
125 |
|
126 |
-
#: press-elements-admin.php:
|
127 |
msgid "Site Counters"
|
128 |
msgstr ""
|
129 |
|
130 |
-
#: press-elements-admin.php:
|
131 |
msgid "Post Elements:"
|
132 |
msgstr ""
|
133 |
|
134 |
-
#: press-elements-admin.php:
|
135 |
msgid "Post Title"
|
136 |
msgstr ""
|
137 |
|
138 |
-
#: press-elements-admin.php:
|
139 |
msgid "Post Excerpt"
|
140 |
msgstr ""
|
141 |
|
142 |
-
#: press-elements-admin.php:
|
143 |
msgid "Post Date"
|
144 |
msgstr ""
|
145 |
|
146 |
-
#: press-elements-admin.php:
|
147 |
msgid "Post Author"
|
148 |
msgstr ""
|
149 |
|
150 |
-
#: press-elements-admin.php:
|
151 |
msgid "Post Terms"
|
152 |
msgstr ""
|
153 |
|
154 |
-
#: press-elements-admin.php:
|
155 |
msgid "Post Featured Image (Pro)"
|
156 |
msgstr ""
|
157 |
|
158 |
-
#: press-elements-admin.php:
|
159 |
msgid "Post Custom Field (Pro)"
|
160 |
msgstr ""
|
161 |
|
162 |
-
#: press-elements-admin.php:
|
163 |
msgid "Post Comments"
|
164 |
msgstr ""
|
165 |
|
166 |
-
#: press-elements-admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
167 |
msgid "Integrations:"
|
168 |
msgstr ""
|
169 |
|
170 |
-
#: press-elements-admin.php:
|
171 |
msgid "Advanced Custom Fields (Pro)"
|
172 |
msgstr ""
|
173 |
|
174 |
-
#: press-elements-admin.php:
|
175 |
msgid "Gravatar (Pro)"
|
176 |
msgstr ""
|
177 |
|
178 |
-
#: press-elements-admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 |
msgid "Coming Soon"
|
180 |
msgstr ""
|
181 |
|
182 |
-
#: press-elements-admin.php:
|
183 |
msgid "Login Form"
|
184 |
msgstr ""
|
185 |
|
186 |
-
#: press-elements-admin.php:
|
187 |
msgid "Search Form"
|
188 |
msgstr ""
|
189 |
|
190 |
-
#: press-elements-admin.php:
|
191 |
msgid "Comments Elements:"
|
192 |
msgstr ""
|
193 |
|
194 |
-
#: press-elements-admin.php:
|
195 |
msgid "Comments Form"
|
196 |
msgstr ""
|
197 |
|
198 |
-
#: press-elements-admin.php:
|
199 |
msgid "Comments List"
|
200 |
msgstr ""
|
201 |
|
202 |
-
#: press-elements-admin.php:
|
203 |
msgid "Comments Pagination"
|
204 |
msgstr ""
|
205 |
|
206 |
-
#: press-elements-admin.php:
|
207 |
-
msgid "
|
208 |
-
msgstr ""
|
209 |
-
|
210 |
-
#: press-elements-admin.php:421
|
211 |
-
msgid "Pinterest (Pro)"
|
212 |
msgstr ""
|
213 |
|
214 |
-
#: press-elements-admin.php:
|
215 |
msgid "Post edit screen with WordPress elements."
|
216 |
msgstr ""
|
217 |
|
218 |
-
#: press-elements-admin.php:
|
219 |
msgid "Elementor widgets for each site and post element."
|
220 |
msgstr ""
|
221 |
|
222 |
-
#: press-elements-admin.php:
|
223 |
msgid "Styling post title with a dedicated Elementor widget."
|
224 |
msgstr ""
|
225 |
|
226 |
-
#: press-elements-admin.php:
|
227 |
msgid "Display post custom fields."
|
228 |
msgstr ""
|
229 |
|
230 |
-
#: press-elements-admin.php:
|
231 |
msgid "Create your own author bio section."
|
232 |
msgstr ""
|
233 |
|
234 |
-
#: press-elements-admin.php:
|
235 |
msgid "Widgets for your site logo, site name and site description."
|
236 |
msgstr ""
|
237 |
|
238 |
-
#: press-elements-admin.php:
|
239 |
msgid "Site counters for Post Types, Taxonomies, Comments and Users."
|
240 |
msgstr ""
|
241 |
|
242 |
-
#: press-elements-admin.php:
|
243 |
msgid "Custom fields as text fields and images, and linking to other custom fields."
|
244 |
msgstr ""
|
245 |
|
246 |
-
#: press-elements-admin.php:
|
247 |
msgid "Display Gravatars based on an email address."
|
248 |
msgstr ""
|
249 |
|
250 |
-
#: press-elements-admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
251 |
msgid "Welcome to Press Elements getting started guide."
|
252 |
msgstr ""
|
253 |
|
254 |
-
#: press-elements-admin.php:
|
255 |
msgid "Getting started with Press Elements is easy! We put together this quick start guide to help first time users of the plugin. Our goal is to get you up and running in no time. Let's begin!"
|
256 |
msgstr ""
|
257 |
|
258 |
-
#: press-elements-admin.php:
|
259 |
msgid "STEP 1: Create a new post"
|
260 |
msgstr ""
|
261 |
|
262 |
-
#: press-elements-admin.php:
|
263 |
msgid "Navigate to \"Posts\" > \"Add New\" to create a new post. Enter a post title, write an excerpt, select a featured image, set an author, select a publish date and publish the post."
|
264 |
msgstr ""
|
265 |
|
266 |
-
#: press-elements-admin.php:
|
267 |
msgid "STEP 2: Design your own template"
|
268 |
msgstr ""
|
269 |
|
270 |
-
#: press-elements-admin.php:
|
271 |
msgid "Click the \"Edit with Elementor\" button and start designing the page layout. Design a page header, footer, and the content area."
|
272 |
msgstr ""
|
273 |
|
274 |
-
#: press-elements-admin.php:
|
275 |
msgid "Use \"Press Elements\" widgets to display the post title, post excerpt, post date and the other fields used by WordPress. Don't forget to style those elements!"
|
276 |
msgstr ""
|
277 |
|
278 |
-
#: press-elements-admin.php:
|
279 |
msgid "STEP 3: Save the template"
|
280 |
msgstr ""
|
281 |
|
282 |
-
#: press-elements-admin.php:
|
283 |
msgid "Click on the \"Add Template\" button located at the bottom, and save the design. You will see the newly created template at the \"My Templates\" tab."
|
284 |
msgstr ""
|
285 |
|
286 |
-
#: press-elements-admin.php:
|
287 |
msgid "You can save several templates for blogs posts, pages, and other post types. Or even several templates for a particular post type."
|
288 |
msgstr ""
|
289 |
|
290 |
-
#: press-elements-admin.php:
|
291 |
msgid "STEP 4: Apply the design to new posts"
|
292 |
msgstr ""
|
293 |
|
294 |
-
#: press-elements-admin.php:
|
295 |
msgid "For each new post you create, load the desired template and apply it to the post. The post will enherite the design but the elements will be updated with the current post data."
|
296 |
msgstr ""
|
297 |
|
298 |
-
#: press-elements-admin.php:
|
299 |
msgid "Press Elements changelog."
|
300 |
msgstr ""
|
301 |
|
302 |
-
#: press-elements-admin.php:
|
303 |
msgid "The Press Elements plugin is developed continuasly, this is the full changelog."
|
304 |
msgstr ""
|
305 |
|
306 |
-
#: press-elements-admin.php:
|
307 |
msgid "No valid changelog was found."
|
308 |
msgstr ""
|
309 |
|
310 |
-
#: press-elements-plugin.php:
|
311 |
msgid "Site Elements"
|
312 |
msgstr ""
|
313 |
|
314 |
-
#: press-elements-plugin.php:
|
315 |
msgid "Post Elements"
|
316 |
msgstr ""
|
317 |
|
318 |
-
#: press-elements-plugin.php:
|
319 |
-
msgid "
|
|
|
|
|
|
|
|
|
320 |
msgstr ""
|
321 |
|
322 |
-
#: press-elements.php:
|
323 |
msgid "\"%1$s\" requires \"%2$s\" to be installed and activated."
|
324 |
msgstr ""
|
325 |
|
326 |
-
#: press-elements.php:
|
327 |
msgid "Elementor"
|
328 |
msgstr ""
|
329 |
|
330 |
-
#: press-elements.php:
|
331 |
msgid "\"%1$s\" requires \"%2$s\" version %3$s or greater."
|
332 |
msgstr ""
|
333 |
|
334 |
-
#: widgets/advanced-custom-fields.php:35, widgets/advanced-custom-fields.php:53, widgets/advanced-custom-fields.php:
|
335 |
msgid "Advanced Custom Fields"
|
336 |
msgstr ""
|
337 |
|
338 |
-
#: widgets/advanced-custom-fields.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
339 |
msgid "Field"
|
340 |
msgstr ""
|
341 |
|
342 |
-
#: widgets/advanced-custom-fields.php:
|
343 |
msgid "Display As"
|
344 |
msgstr ""
|
345 |
|
346 |
-
#: widgets/advanced-custom-fields.php:
|
347 |
msgid "Text"
|
348 |
msgstr ""
|
349 |
|
350 |
-
#: widgets/advanced-custom-fields.php:
|
351 |
msgid "Image"
|
352 |
msgstr ""
|
353 |
|
354 |
-
#: widgets/advanced-custom-fields.php:
|
355 |
msgid "HTML Tag"
|
356 |
msgstr ""
|
357 |
|
358 |
-
#: widgets/advanced-custom-fields.php:
|
359 |
msgid "H1"
|
360 |
msgstr ""
|
361 |
|
362 |
-
#: widgets/advanced-custom-fields.php:
|
363 |
msgid "H2"
|
364 |
msgstr ""
|
365 |
|
366 |
-
#: widgets/advanced-custom-fields.php:
|
367 |
msgid "H3"
|
368 |
msgstr ""
|
369 |
|
370 |
-
#: widgets/advanced-custom-fields.php:
|
371 |
msgid "H4"
|
372 |
msgstr ""
|
373 |
|
374 |
-
#: widgets/advanced-custom-fields.php:
|
375 |
msgid "H5"
|
376 |
msgstr ""
|
377 |
|
378 |
-
#: widgets/advanced-custom-fields.php:
|
379 |
msgid "H6"
|
380 |
msgstr ""
|
381 |
|
382 |
-
#: widgets/advanced-custom-fields.php:
|
383 |
msgid "p"
|
384 |
msgstr ""
|
385 |
|
386 |
-
#: widgets/advanced-custom-fields.php:
|
387 |
msgid "div"
|
388 |
msgstr ""
|
389 |
|
390 |
-
#: widgets/advanced-custom-fields.php:
|
391 |
msgid "span"
|
392 |
msgstr ""
|
393 |
|
394 |
-
#: widgets/advanced-custom-fields.php:
|
395 |
msgid "Alignment"
|
396 |
msgstr ""
|
397 |
|
398 |
-
#: widgets/advanced-custom-fields.php:
|
399 |
msgid "Left"
|
400 |
msgstr ""
|
401 |
|
402 |
-
#: widgets/advanced-custom-fields.php:
|
403 |
msgid "Center"
|
404 |
msgstr ""
|
405 |
|
406 |
-
#: widgets/advanced-custom-fields.php:
|
407 |
msgid "Right"
|
408 |
msgstr ""
|
409 |
|
410 |
-
#: widgets/advanced-custom-fields.php:
|
411 |
msgid "Justified"
|
412 |
msgstr ""
|
413 |
|
414 |
-
#: widgets/advanced-custom-fields.php:
|
415 |
msgid "Link to"
|
416 |
msgstr ""
|
417 |
|
418 |
-
#: widgets/advanced-custom-fields.php:
|
419 |
msgid "None"
|
420 |
msgstr ""
|
421 |
|
422 |
-
#: widgets/advanced-custom-fields.php:
|
|
|
|
|
|
|
|
|
423 |
msgid "Post URL"
|
424 |
msgstr ""
|
425 |
|
426 |
-
#: widgets/advanced-custom-fields.php:
|
427 |
msgid "Other ACF Field"
|
428 |
msgstr ""
|
429 |
|
430 |
-
#: widgets/advanced-custom-fields.php:
|
431 |
msgid "Custom URL"
|
432 |
msgstr ""
|
433 |
|
434 |
-
#: widgets/advanced-custom-fields.php:
|
435 |
msgid "Link"
|
436 |
msgstr ""
|
437 |
|
438 |
-
#: widgets/advanced-custom-fields.php:
|
439 |
msgid "http://your-link.com"
|
440 |
msgstr ""
|
441 |
|
442 |
-
#: widgets/advanced-custom-fields.php:
|
443 |
msgid "Link to ACF Field"
|
444 |
msgstr ""
|
445 |
|
446 |
-
#: widgets/advanced-custom-fields.php:
|
447 |
-
msgid "Premium Feature"
|
448 |
-
msgstr ""
|
449 |
-
|
450 |
-
#: widgets/advanced-custom-fields.php:196, widgets/advanced-custom-fields.php:384, widgets/gravatar.php:155, widgets/gravatar.php:294, widgets/post-custom-field.php:208, widgets/post-custom-field.php:400, widgets/post-featured-image.php:159, widgets/post-featured-image.php:302
|
451 |
-
msgid "This feature is available only for Press Elements Pro."
|
452 |
-
msgstr ""
|
453 |
-
|
454 |
-
#: widgets/advanced-custom-fields.php:199, widgets/advanced-custom-fields.php:387, widgets/gravatar.php:158, widgets/gravatar.php:297, widgets/post-custom-field.php:211, widgets/post-custom-field.php:403, widgets/post-featured-image.php:162, widgets/post-featured-image.php:305
|
455 |
-
msgid "Upgrade Now!"
|
456 |
-
msgstr ""
|
457 |
-
|
458 |
-
#: widgets/advanced-custom-fields.php:223, widgets/post-author.php:179, widgets/post-custom-field.php:239, widgets/post-date.php:179, widgets/post-excerpt.php:331, widgets/post-terms.php:156, widgets/post-title.php:166, widgets/site-counters.php:170, widgets/site-counters.php:212, widgets/site-description.php:146, widgets/site-title.php:146
|
459 |
msgid "Text Color"
|
460 |
msgstr ""
|
461 |
|
462 |
-
#: widgets/advanced-custom-fields.php:
|
463 |
msgid "Size (%)"
|
464 |
msgstr ""
|
465 |
|
466 |
-
#: widgets/advanced-custom-fields.php:
|
467 |
msgid "Opacity (%)"
|
468 |
msgstr ""
|
469 |
|
470 |
-
#: widgets/advanced-custom-fields.php:
|
471 |
msgid "Angle (deg)"
|
472 |
msgstr ""
|
473 |
|
474 |
-
#: widgets/advanced-custom-fields.php:
|
475 |
msgid "Hover Animation"
|
476 |
msgstr ""
|
477 |
|
478 |
-
#: widgets/advanced-custom-fields.php:
|
479 |
msgid "Image Border"
|
480 |
msgstr ""
|
481 |
|
482 |
-
#: widgets/advanced-custom-fields.php:
|
483 |
msgid "Border Radius"
|
484 |
msgstr ""
|
485 |
|
486 |
-
#: widgets/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
487 |
msgid "Gravatar"
|
488 |
msgstr ""
|
489 |
|
490 |
-
#: widgets/gravatar.php:
|
491 |
msgid "Email"
|
492 |
msgstr ""
|
493 |
|
494 |
-
#: widgets/gravatar.php:
|
495 |
msgid "your@email.com"
|
496 |
msgstr ""
|
497 |
|
498 |
-
#: widgets/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
499 |
msgid "%s Author"
|
500 |
msgstr ""
|
501 |
|
@@ -503,47 +811,47 @@ msgstr ""
|
|
503 |
msgid "Author"
|
504 |
msgstr ""
|
505 |
|
506 |
-
#: widgets/post-author.php:
|
507 |
msgid "%s URL"
|
508 |
msgstr ""
|
509 |
|
510 |
-
#: widgets/post-author.php:
|
511 |
msgid "Author URL"
|
512 |
msgstr ""
|
513 |
|
514 |
-
#: widgets/post-author.php:
|
515 |
msgid "First Name"
|
516 |
msgstr ""
|
517 |
|
518 |
-
#: widgets/post-author.php:
|
519 |
msgid "Last Name"
|
520 |
msgstr ""
|
521 |
|
522 |
-
#: widgets/post-author.php:
|
523 |
msgid "First Name + Last Name"
|
524 |
msgstr ""
|
525 |
|
526 |
-
#: widgets/post-author.php:
|
527 |
msgid "Last Name + First Name"
|
528 |
msgstr ""
|
529 |
|
530 |
-
#: widgets/post-author.php:
|
531 |
msgid "Nick Name"
|
532 |
msgstr ""
|
533 |
|
534 |
-
#: widgets/post-author.php:
|
535 |
msgid "Display Name"
|
536 |
msgstr ""
|
537 |
|
538 |
-
#: widgets/post-author.php:
|
539 |
msgid "User Name"
|
540 |
msgstr ""
|
541 |
|
542 |
-
#: widgets/post-author.php:
|
543 |
msgid "User Bio"
|
544 |
msgstr ""
|
545 |
|
546 |
-
#: widgets/post-author.php:
|
547 |
msgid "User Image"
|
548 |
msgstr ""
|
549 |
|
@@ -559,23 +867,23 @@ msgstr ""
|
|
559 |
msgid "No custom styling can be applied as each theme uses it's own CSS classes and IDs."
|
560 |
msgstr ""
|
561 |
|
562 |
-
#: widgets/post-custom-field.php:39, widgets/post-custom-field.php:
|
563 |
msgid "%s Custom Field"
|
564 |
msgstr ""
|
565 |
|
566 |
-
#: widgets/post-custom-field.php:
|
567 |
msgid "Custom Field"
|
568 |
msgstr ""
|
569 |
|
570 |
-
#: widgets/post-custom-field.php:
|
571 |
msgid "Other Custom Field"
|
572 |
msgstr ""
|
573 |
|
574 |
-
#: widgets/post-custom-field.php:
|
575 |
msgid "Custom Field Link"
|
576 |
msgstr ""
|
577 |
|
578 |
-
#: widgets/post-date.php:37, widgets/post-date.php:59, widgets/post-date.php:
|
579 |
msgid "%s Date"
|
580 |
msgstr ""
|
581 |
|
@@ -591,15 +899,15 @@ msgstr ""
|
|
591 |
msgid "Last Modified Date"
|
592 |
msgstr ""
|
593 |
|
594 |
-
#: widgets/post-excerpt.php:73, widgets/post-excerpt.php:117, widgets/post-excerpt.php:
|
595 |
msgid "%s Excerpt"
|
596 |
msgstr ""
|
597 |
|
598 |
-
#: widgets/post-featured-image.php:
|
599 |
msgid "%s Featured Image"
|
600 |
msgstr ""
|
601 |
|
602 |
-
#: widgets/post-featured-image.php:
|
603 |
msgid "Image Size"
|
604 |
msgstr ""
|
605 |
|
@@ -619,7 +927,7 @@ msgstr ""
|
|
619 |
msgid "Term"
|
620 |
msgstr ""
|
621 |
|
622 |
-
#: widgets/post-title.php:37, widgets/post-title.php:59, widgets/post-title.php:
|
623 |
msgid "%s Title"
|
624 |
msgstr ""
|
625 |
|
@@ -646,7 +954,3 @@ msgstr ""
|
|
646 |
#: widgets/site-counters.php:204
|
647 |
msgid "Label"
|
648 |
msgstr ""
|
649 |
-
|
650 |
-
#: widgets/site-description.php:111, widgets/site-logo.php:118, widgets/site-title.php:111
|
651 |
-
msgid "Home URL"
|
652 |
-
msgstr ""
|
15 |
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
16 |
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
17 |
|
18 |
+
#: press-elements-admin.php:119, press-elements-admin.php:261, press-elements-freemius.php:60
|
19 |
msgid "Press Elements - Widgets for Elementor"
|
20 |
msgstr ""
|
21 |
|
22 |
+
#: press-elements-admin.php:121, press-elements.php:163, press-elements.php:217
|
23 |
msgid "Press Elements"
|
24 |
msgstr ""
|
25 |
|
27 |
msgid "About"
|
28 |
msgstr ""
|
29 |
|
30 |
+
#: press-elements-admin.php:165, press-elements-admin.php:689
|
31 |
msgid "Getting Started"
|
32 |
msgstr ""
|
33 |
|
34 |
+
#: press-elements-admin.php:167, press-elements-admin.php:843
|
35 |
msgid "Changelog"
|
36 |
msgstr ""
|
37 |
|
38 |
#: press-elements-admin.php:169
|
39 |
+
msgid "Pricing"
|
40 |
msgstr ""
|
41 |
|
42 |
+
#: press-elements-admin.php:171
|
43 |
+
msgid "Account"
|
44 |
msgstr ""
|
45 |
|
46 |
+
#: press-elements-admin.php:173
|
47 |
+
msgid "Support Forum"
|
48 |
msgstr ""
|
49 |
|
50 |
+
#: press-elements-admin.php:265
|
51 |
+
msgid "Easy-to-use widgets that help you display and design your content using Elementor page builder."
|
52 |
+
msgstr ""
|
53 |
+
|
54 |
+
#: press-elements-admin.php:273
|
55 |
+
msgid "Press Elements combines the simplicity of Elementor with the efficiency of the built-in WordPress theme components."
|
56 |
msgstr ""
|
57 |
|
58 |
#: press-elements-admin.php:285
|
59 |
+
msgid "WordPress Elements"
|
60 |
msgstr ""
|
61 |
|
62 |
#: press-elements-admin.php:289
|
63 |
+
msgid "When you create a new post (or a page) on WordPress, you choose a title, write an excerpt, select a publish date, add an author, choose featured image, select several taxonomies and maybe you define some custom fields."
|
64 |
msgstr ""
|
65 |
|
66 |
#: press-elements-admin.php:293
|
67 |
+
msgid "In the Elementor page builder you can't display and style those components. You need to repeat the process and manually add a title, write the excerpt and add images."
|
68 |
msgstr ""
|
69 |
|
70 |
#: press-elements-admin.php:297
|
71 |
+
msgid "That's where Press Elements comes in handy. The plugin adds smart widgets that let you display those post components. Now you can drag a \"Post Title\" widget and style it your way. The widget will automatically insert the title used as the post title. Same applies for all the other post components."
|
72 |
msgstr ""
|
73 |
|
74 |
#: press-elements-admin.php:301
|
75 |
+
msgid "Dynamic Content"
|
76 |
msgstr ""
|
77 |
|
78 |
#: press-elements-admin.php:305
|
79 |
+
msgid "Regular Elementor widgets save the data as hard-coded content in the database. To change something you need to open the page builder and manually change the element inside the builder. Updating post titles, excerpts, authors and other WordPress Element won't affect the builder."
|
80 |
msgstr ""
|
81 |
|
82 |
#: press-elements-admin.php:309
|
83 |
+
msgid "Press Elements uses dynamic content architecture. It doesn't save the title and other element as hard-coded content. It generates them on-the-fly. Just like the WordPress theme system."
|
84 |
msgstr ""
|
85 |
|
86 |
#: press-elements-admin.php:313
|
87 |
+
msgid "When you change post titles and other post elements from your WordPress dashboard (outside of Elementor), they will be automatically updated in the content area and in the page builder."
|
88 |
msgstr ""
|
89 |
|
90 |
#: press-elements-admin.php:317
|
91 |
+
msgid "For example, you can bulk edit several posts from your sites dashboard to change the author, post that use \"Post Author\" widget will be automatically updates with the new data."
|
92 |
msgstr ""
|
93 |
|
94 |
#: press-elements-admin.php:321
|
95 |
+
msgid "Template Design"
|
96 |
msgstr ""
|
97 |
|
98 |
#: press-elements-admin.php:325
|
99 |
+
msgid "When using page builders, you need to create all the page element for each page over and over again. Currently you can't design single page templates and apply the design on the post. When you use the template system you need to manually change titles and images for each post/page."
|
100 |
msgstr ""
|
101 |
|
102 |
#: press-elements-admin.php:329
|
103 |
+
msgid "With Press Elements you can create custom designs with post elements and save them as template. When you apply the template on other posts, it will inherit the data from the new post. No more manual updates!"
|
104 |
msgstr ""
|
105 |
|
106 |
#: press-elements-admin.php:333
|
107 |
+
msgid "You don't need to hire developers to generate custom page templates - with Press Elements you can do it using a simple drag & drop interface! Now you can design different templates for different blog posts, pages and other Post Types. When creating new posts, load your predefined templates from your template library."
|
108 |
msgstr ""
|
109 |
|
110 |
#: press-elements-admin.php:337
|
111 |
+
msgid "With Press Elements you can use Elementor widgets to display and design your post elements! Just like developers use theme-functions to generate themes. How cool is that?!"
|
112 |
+
msgstr ""
|
113 |
+
|
114 |
+
#: press-elements-admin.php:341
|
115 |
msgid "Included Widgets"
|
116 |
msgstr ""
|
117 |
|
118 |
+
#: press-elements-admin.php:345, press-elements-admin.php:413
|
119 |
msgid "Site Elements:"
|
120 |
msgstr ""
|
121 |
|
122 |
+
#: press-elements-admin.php:349, widgets/site-title.php:33, widgets/site-title.php:49, widgets/site-title.php:138
|
123 |
msgid "Site Title"
|
124 |
msgstr ""
|
125 |
|
126 |
+
#: press-elements-admin.php:351, widgets/site-description.php:33, widgets/site-description.php:49, widgets/site-description.php:138
|
127 |
msgid "Site Description"
|
128 |
msgstr ""
|
129 |
|
130 |
+
#: press-elements-admin.php:353, widgets/site-logo.php:32, widgets/site-logo.php:48, widgets/site-logo.php:145
|
131 |
msgid "Site Logo"
|
132 |
msgstr ""
|
133 |
|
134 |
+
#: press-elements-admin.php:355, widgets/site-counters.php:33, widgets/site-counters.php:62
|
135 |
msgid "Site Counters"
|
136 |
msgstr ""
|
137 |
|
138 |
+
#: press-elements-admin.php:359
|
139 |
msgid "Post Elements:"
|
140 |
msgstr ""
|
141 |
|
142 |
+
#: press-elements-admin.php:363
|
143 |
msgid "Post Title"
|
144 |
msgstr ""
|
145 |
|
146 |
+
#: press-elements-admin.php:365
|
147 |
msgid "Post Excerpt"
|
148 |
msgstr ""
|
149 |
|
150 |
+
#: press-elements-admin.php:367
|
151 |
msgid "Post Date"
|
152 |
msgstr ""
|
153 |
|
154 |
+
#: press-elements-admin.php:369
|
155 |
msgid "Post Author"
|
156 |
msgstr ""
|
157 |
|
158 |
+
#: press-elements-admin.php:371
|
159 |
msgid "Post Terms"
|
160 |
msgstr ""
|
161 |
|
162 |
+
#: press-elements-admin.php:373
|
163 |
msgid "Post Featured Image (Pro)"
|
164 |
msgstr ""
|
165 |
|
166 |
+
#: press-elements-admin.php:375
|
167 |
msgid "Post Custom Field (Pro)"
|
168 |
msgstr ""
|
169 |
|
170 |
+
#: press-elements-admin.php:377
|
171 |
msgid "Post Comments"
|
172 |
msgstr ""
|
173 |
|
174 |
+
#: press-elements-admin.php:381, press-elements-admin.php:435
|
175 |
+
msgid "Effects:"
|
176 |
+
msgstr ""
|
177 |
+
|
178 |
+
#: press-elements-admin.php:385
|
179 |
+
msgid "Image Accordion (Pro)"
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: press-elements-admin.php:387
|
183 |
+
msgid "Before After Effect (Pro)"
|
184 |
+
msgstr ""
|
185 |
+
|
186 |
+
#: press-elements-admin.php:389
|
187 |
+
msgid "Notes (Pro)"
|
188 |
+
msgstr ""
|
189 |
+
|
190 |
+
#: press-elements-admin.php:393
|
191 |
msgid "Integrations:"
|
192 |
msgstr ""
|
193 |
|
194 |
+
#: press-elements-admin.php:397
|
195 |
msgid "Advanced Custom Fields (Pro)"
|
196 |
msgstr ""
|
197 |
|
198 |
+
#: press-elements-admin.php:399
|
199 |
msgid "Gravatar (Pro)"
|
200 |
msgstr ""
|
201 |
|
202 |
+
#: press-elements-admin.php:401
|
203 |
+
msgid "Flickr (Pro)"
|
204 |
+
msgstr ""
|
205 |
+
|
206 |
+
#: press-elements-admin.php:403
|
207 |
+
msgid "Pinterest (Pro)"
|
208 |
+
msgstr ""
|
209 |
+
|
210 |
+
#: press-elements-admin.php:409
|
211 |
msgid "Coming Soon"
|
212 |
msgstr ""
|
213 |
|
214 |
+
#: press-elements-admin.php:417
|
215 |
msgid "Login Form"
|
216 |
msgstr ""
|
217 |
|
218 |
+
#: press-elements-admin.php:419
|
219 |
msgid "Search Form"
|
220 |
msgstr ""
|
221 |
|
222 |
+
#: press-elements-admin.php:423
|
223 |
msgid "Comments Elements:"
|
224 |
msgstr ""
|
225 |
|
226 |
+
#: press-elements-admin.php:427
|
227 |
msgid "Comments Form"
|
228 |
msgstr ""
|
229 |
|
230 |
+
#: press-elements-admin.php:429
|
231 |
msgid "Comments List"
|
232 |
msgstr ""
|
233 |
|
234 |
+
#: press-elements-admin.php:431
|
235 |
msgid "Comments Pagination"
|
236 |
msgstr ""
|
237 |
|
238 |
+
#: press-elements-admin.php:439
|
239 |
+
msgid "Typing Effect (Pro)"
|
|
|
|
|
|
|
|
|
240 |
msgstr ""
|
241 |
|
242 |
+
#: press-elements-admin.php:457, press-elements-admin.php:461
|
243 |
msgid "Post edit screen with WordPress elements."
|
244 |
msgstr ""
|
245 |
|
246 |
+
#: press-elements-admin.php:475, press-elements-admin.php:479
|
247 |
msgid "Elementor widgets for each site and post element."
|
248 |
msgstr ""
|
249 |
|
250 |
+
#: press-elements-admin.php:493, press-elements-admin.php:497
|
251 |
msgid "Styling post title with a dedicated Elementor widget."
|
252 |
msgstr ""
|
253 |
|
254 |
+
#: press-elements-admin.php:511, press-elements-admin.php:515
|
255 |
msgid "Display post custom fields."
|
256 |
msgstr ""
|
257 |
|
258 |
+
#: press-elements-admin.php:529, press-elements-admin.php:533
|
259 |
msgid "Create your own author bio section."
|
260 |
msgstr ""
|
261 |
|
262 |
+
#: press-elements-admin.php:547, press-elements-admin.php:551
|
263 |
msgid "Widgets for your site logo, site name and site description."
|
264 |
msgstr ""
|
265 |
|
266 |
+
#: press-elements-admin.php:565, press-elements-admin.php:569
|
267 |
msgid "Site counters for Post Types, Taxonomies, Comments and Users."
|
268 |
msgstr ""
|
269 |
|
270 |
+
#: press-elements-admin.php:583, press-elements-admin.php:587
|
271 |
msgid "Custom fields as text fields and images, and linking to other custom fields."
|
272 |
msgstr ""
|
273 |
|
274 |
+
#: press-elements-admin.php:601, press-elements-admin.php:605
|
275 |
msgid "Display Gravatars based on an email address."
|
276 |
msgstr ""
|
277 |
|
278 |
+
#: press-elements-admin.php:619, press-elements-admin.php:623
|
279 |
+
msgid "Display Flickr photostream based on Flickr User ID."
|
280 |
+
msgstr ""
|
281 |
+
|
282 |
+
#: press-elements-admin.php:637, press-elements-admin.php:641
|
283 |
+
msgid "Display Pinterest pins based on Pinterest username."
|
284 |
+
msgstr ""
|
285 |
+
|
286 |
+
#: press-elements-admin.php:693
|
287 |
msgid "Welcome to Press Elements getting started guide."
|
288 |
msgstr ""
|
289 |
|
290 |
+
#: press-elements-admin.php:701
|
291 |
msgid "Getting started with Press Elements is easy! We put together this quick start guide to help first time users of the plugin. Our goal is to get you up and running in no time. Let's begin!"
|
292 |
msgstr ""
|
293 |
|
294 |
+
#: press-elements-admin.php:713
|
295 |
msgid "STEP 1: Create a new post"
|
296 |
msgstr ""
|
297 |
|
298 |
+
#: press-elements-admin.php:717
|
299 |
msgid "Navigate to \"Posts\" > \"Add New\" to create a new post. Enter a post title, write an excerpt, select a featured image, set an author, select a publish date and publish the post."
|
300 |
msgstr ""
|
301 |
|
302 |
+
#: press-elements-admin.php:737
|
303 |
msgid "STEP 2: Design your own template"
|
304 |
msgstr ""
|
305 |
|
306 |
+
#: press-elements-admin.php:741
|
307 |
msgid "Click the \"Edit with Elementor\" button and start designing the page layout. Design a page header, footer, and the content area."
|
308 |
msgstr ""
|
309 |
|
310 |
+
#: press-elements-admin.php:745
|
311 |
msgid "Use \"Press Elements\" widgets to display the post title, post excerpt, post date and the other fields used by WordPress. Don't forget to style those elements!"
|
312 |
msgstr ""
|
313 |
|
314 |
+
#: press-elements-admin.php:765
|
315 |
msgid "STEP 3: Save the template"
|
316 |
msgstr ""
|
317 |
|
318 |
+
#: press-elements-admin.php:769
|
319 |
msgid "Click on the \"Add Template\" button located at the bottom, and save the design. You will see the newly created template at the \"My Templates\" tab."
|
320 |
msgstr ""
|
321 |
|
322 |
+
#: press-elements-admin.php:773
|
323 |
msgid "You can save several templates for blogs posts, pages, and other post types. Or even several templates for a particular post type."
|
324 |
msgstr ""
|
325 |
|
326 |
+
#: press-elements-admin.php:793
|
327 |
msgid "STEP 4: Apply the design to new posts"
|
328 |
msgstr ""
|
329 |
|
330 |
+
#: press-elements-admin.php:797
|
331 |
msgid "For each new post you create, load the desired template and apply it to the post. The post will enherite the design but the elements will be updated with the current post data."
|
332 |
msgstr ""
|
333 |
|
334 |
+
#: press-elements-admin.php:847
|
335 |
msgid "Press Elements changelog."
|
336 |
msgstr ""
|
337 |
|
338 |
+
#: press-elements-admin.php:855
|
339 |
msgid "The Press Elements plugin is developed continuasly, this is the full changelog."
|
340 |
msgstr ""
|
341 |
|
342 |
+
#: press-elements-admin.php:897
|
343 |
msgid "No valid changelog was found."
|
344 |
msgstr ""
|
345 |
|
346 |
+
#: press-elements-plugin.php:163
|
347 |
msgid "Site Elements"
|
348 |
msgstr ""
|
349 |
|
350 |
+
#: press-elements-plugin.php:173
|
351 |
msgid "Post Elements"
|
352 |
msgstr ""
|
353 |
|
354 |
+
#: press-elements-plugin.php:183
|
355 |
+
msgid "Press Elements Pro Effects"
|
356 |
+
msgstr ""
|
357 |
+
|
358 |
+
#: press-elements-plugin.php:193
|
359 |
+
msgid "Press Elements Pro Integrations"
|
360 |
msgstr ""
|
361 |
|
362 |
+
#: press-elements.php:161
|
363 |
msgid "\"%1$s\" requires \"%2$s\" to be installed and activated."
|
364 |
msgstr ""
|
365 |
|
366 |
+
#: press-elements.php:165, press-elements.php:219
|
367 |
msgid "Elementor"
|
368 |
msgstr ""
|
369 |
|
370 |
+
#: press-elements.php:215
|
371 |
msgid "\"%1$s\" requires \"%2$s\" version %3$s or greater."
|
372 |
msgstr ""
|
373 |
|
374 |
+
#: widgets/advanced-custom-fields.php:35, widgets/advanced-custom-fields.php:53, widgets/advanced-custom-fields.php:71, widgets/advanced-custom-fields.php:89, widgets/advanced-custom-fields.php:139, widgets/advanced-custom-fields.php:264
|
375 |
msgid "Advanced Custom Fields"
|
376 |
msgstr ""
|
377 |
|
378 |
+
#: widgets/advanced-custom-fields.php:65
|
379 |
+
msgid "Pugin is Missing"
|
380 |
+
msgstr ""
|
381 |
+
|
382 |
+
#: widgets/advanced-custom-fields.php:70
|
383 |
+
msgid "This feature requires \"%s\" plugin to be installed and active."
|
384 |
+
msgstr ""
|
385 |
+
|
386 |
+
#: widgets/advanced-custom-fields.php:101, widgets/before-after-effect.php:69, widgets/flickr.php:60, widgets/gravatar.php:62, widgets/image-accordion.php:67, widgets/notes.php:64, widgets/pinterest.php:60, widgets/post-custom-field.php:77
|
387 |
+
msgid "Premium Feature"
|
388 |
+
msgstr ""
|
389 |
+
|
390 |
+
#: widgets/advanced-custom-fields.php:106, widgets/before-after-effect.php:74, widgets/flickr.php:65, widgets/gravatar.php:67, widgets/image-accordion.php:72, widgets/notes.php:69, widgets/pinterest.php:65, widgets/post-custom-field.php:82
|
391 |
+
msgid "This feature is only available on \"%s\"."
|
392 |
+
msgstr ""
|
393 |
+
|
394 |
+
#: widgets/advanced-custom-fields.php:107, widgets/before-after-effect.php:75, widgets/flickr.php:66, widgets/gravatar.php:68, widgets/image-accordion.php:73, widgets/notes.php:70, widgets/pinterest.php:66, widgets/post-custom-field.php:83
|
395 |
+
msgid "Press Elements Pro"
|
396 |
+
msgstr ""
|
397 |
+
|
398 |
+
#: widgets/advanced-custom-fields.php:111, widgets/before-after-effect.php:79, widgets/flickr.php:70, widgets/gravatar.php:72, widgets/image-accordion.php:77, widgets/notes.php:74, widgets/pinterest.php:70, widgets/post-custom-field.php:87
|
399 |
+
msgid "Upgrade Now!"
|
400 |
+
msgstr ""
|
401 |
+
|
402 |
+
#: widgets/advanced-custom-fields.php:146
|
403 |
msgid "Field"
|
404 |
msgstr ""
|
405 |
|
406 |
+
#: widgets/advanced-custom-fields.php:155, widgets/post-custom-field.php:130
|
407 |
msgid "Display As"
|
408 |
msgstr ""
|
409 |
|
410 |
+
#: widgets/advanced-custom-fields.php:158, widgets/before-after-effect.php:111, widgets/before-after-effect.php:148, widgets/post-custom-field.php:133
|
411 |
msgid "Text"
|
412 |
msgstr ""
|
413 |
|
414 |
+
#: widgets/advanced-custom-fields.php:159, widgets/before-after-effect.php:126, widgets/before-after-effect.php:163, widgets/image-accordion.php:116, widgets/image-accordion.php:217, widgets/post-custom-field.php:134
|
415 |
msgid "Image"
|
416 |
msgstr ""
|
417 |
|
418 |
+
#: widgets/advanced-custom-fields.php:168, widgets/gravatar.php:104, widgets/image-accordion.php:407, widgets/notes.php:244, widgets/post-author.php:80, widgets/post-custom-field.php:143, widgets/post-date.php:81, widgets/post-excerpt.php:135, widgets/post-terms.php:79, widgets/post-title.php:68, widgets/site-counters.php:110, widgets/site-description.php:56, widgets/site-logo.php:63, widgets/site-title.php:56
|
419 |
msgid "HTML Tag"
|
420 |
msgstr ""
|
421 |
|
422 |
+
#: widgets/advanced-custom-fields.php:171, widgets/gravatar.php:107, widgets/image-accordion.php:410, widgets/notes.php:247, widgets/post-author.php:83, widgets/post-custom-field.php:146, widgets/post-date.php:84, widgets/post-excerpt.php:141, widgets/post-terms.php:82, widgets/post-title.php:71, widgets/site-counters.php:113, widgets/site-description.php:59, widgets/site-logo.php:66, widgets/site-title.php:59
|
423 |
msgid "H1"
|
424 |
msgstr ""
|
425 |
|
426 |
+
#: widgets/advanced-custom-fields.php:172, widgets/gravatar.php:108, widgets/image-accordion.php:411, widgets/notes.php:248, widgets/post-author.php:84, widgets/post-custom-field.php:147, widgets/post-date.php:85, widgets/post-excerpt.php:143, widgets/post-terms.php:83, widgets/post-title.php:72, widgets/site-counters.php:114, widgets/site-description.php:60, widgets/site-logo.php:67, widgets/site-title.php:60
|
427 |
msgid "H2"
|
428 |
msgstr ""
|
429 |
|
430 |
+
#: widgets/advanced-custom-fields.php:173, widgets/gravatar.php:109, widgets/image-accordion.php:412, widgets/notes.php:249, widgets/post-author.php:85, widgets/post-custom-field.php:148, widgets/post-date.php:86, widgets/post-excerpt.php:145, widgets/post-terms.php:84, widgets/post-title.php:73, widgets/site-counters.php:115, widgets/site-description.php:61, widgets/site-logo.php:68, widgets/site-title.php:61
|
431 |
msgid "H3"
|
432 |
msgstr ""
|
433 |
|
434 |
+
#: widgets/advanced-custom-fields.php:174, widgets/gravatar.php:110, widgets/image-accordion.php:413, widgets/notes.php:250, widgets/post-author.php:86, widgets/post-custom-field.php:149, widgets/post-date.php:87, widgets/post-excerpt.php:147, widgets/post-terms.php:85, widgets/post-title.php:74, widgets/site-counters.php:116, widgets/site-description.php:62, widgets/site-logo.php:69, widgets/site-title.php:62
|
435 |
msgid "H4"
|
436 |
msgstr ""
|
437 |
|
438 |
+
#: widgets/advanced-custom-fields.php:175, widgets/gravatar.php:111, widgets/image-accordion.php:414, widgets/notes.php:251, widgets/post-author.php:87, widgets/post-custom-field.php:150, widgets/post-date.php:88, widgets/post-excerpt.php:149, widgets/post-terms.php:86, widgets/post-title.php:75, widgets/site-counters.php:117, widgets/site-description.php:63, widgets/site-logo.php:70, widgets/site-title.php:63
|
439 |
msgid "H5"
|
440 |
msgstr ""
|
441 |
|
442 |
+
#: widgets/advanced-custom-fields.php:176, widgets/gravatar.php:112, widgets/image-accordion.php:415, widgets/notes.php:252, widgets/post-author.php:88, widgets/post-custom-field.php:151, widgets/post-date.php:89, widgets/post-excerpt.php:151, widgets/post-terms.php:87, widgets/post-title.php:76, widgets/site-counters.php:118, widgets/site-description.php:64, widgets/site-logo.php:71, widgets/site-title.php:64
|
443 |
msgid "H6"
|
444 |
msgstr ""
|
445 |
|
446 |
+
#: widgets/advanced-custom-fields.php:177, widgets/gravatar.php:113, widgets/image-accordion.php:416, widgets/notes.php:253, widgets/post-author.php:89, widgets/post-custom-field.php:152, widgets/post-date.php:90, widgets/post-excerpt.php:153, widgets/post-terms.php:88, widgets/post-title.php:77, widgets/site-counters.php:119, widgets/site-description.php:65, widgets/site-logo.php:72, widgets/site-title.php:65
|
447 |
msgid "p"
|
448 |
msgstr ""
|
449 |
|
450 |
+
#: widgets/advanced-custom-fields.php:178, widgets/gravatar.php:114, widgets/image-accordion.php:417, widgets/notes.php:254, widgets/post-author.php:90, widgets/post-custom-field.php:153, widgets/post-date.php:91, widgets/post-excerpt.php:155, widgets/post-terms.php:89, widgets/post-title.php:78, widgets/site-counters.php:120, widgets/site-description.php:66, widgets/site-logo.php:73, widgets/site-title.php:66
|
451 |
msgid "div"
|
452 |
msgstr ""
|
453 |
|
454 |
+
#: widgets/advanced-custom-fields.php:179, widgets/gravatar.php:115, widgets/image-accordion.php:418, widgets/notes.php:255, widgets/post-author.php:91, widgets/post-custom-field.php:154, widgets/post-date.php:92, widgets/post-excerpt.php:157, widgets/post-terms.php:90, widgets/post-title.php:79, widgets/site-counters.php:121, widgets/site-description.php:67, widgets/site-logo.php:74, widgets/site-title.php:67
|
455 |
msgid "span"
|
456 |
msgstr ""
|
457 |
|
458 |
+
#: widgets/advanced-custom-fields.php:188, widgets/gravatar.php:124, widgets/image-accordion.php:311, widgets/notes.php:264, widgets/notes.php:328, widgets/post-author.php:100, widgets/post-custom-field.php:163, widgets/post-date.php:101, widgets/post-excerpt.php:175, widgets/post-featured-image.php:87, widgets/post-terms.php:99, widgets/post-title.php:88, widgets/site-counters.php:130, widgets/site-description.php:76, widgets/site-logo.php:83, widgets/site-title.php:76
|
459 |
msgid "Alignment"
|
460 |
msgstr ""
|
461 |
|
462 |
+
#: widgets/advanced-custom-fields.php:192, widgets/gravatar.php:128, widgets/image-accordion.php:230, widgets/image-accordion.php:316, widgets/notes.php:268, widgets/notes.php:332, widgets/post-author.php:104, widgets/post-custom-field.php:167, widgets/post-date.php:105, widgets/post-excerpt.php:183, widgets/post-featured-image.php:91, widgets/post-terms.php:103, widgets/post-title.php:92, widgets/site-counters.php:134, widgets/site-description.php:80, widgets/site-logo.php:87, widgets/site-title.php:80
|
463 |
msgid "Left"
|
464 |
msgstr ""
|
465 |
|
466 |
+
#: widgets/advanced-custom-fields.php:196, widgets/gravatar.php:132, widgets/image-accordion.php:234, widgets/image-accordion.php:320, widgets/notes.php:272, widgets/notes.php:336, widgets/post-author.php:108, widgets/post-custom-field.php:171, widgets/post-date.php:109, widgets/post-excerpt.php:191, widgets/post-featured-image.php:95, widgets/post-terms.php:107, widgets/post-title.php:96, widgets/site-counters.php:138, widgets/site-description.php:84, widgets/site-logo.php:91, widgets/site-title.php:84
|
467 |
msgid "Center"
|
468 |
msgstr ""
|
469 |
|
470 |
+
#: widgets/advanced-custom-fields.php:200, widgets/gravatar.php:136, widgets/image-accordion.php:238, widgets/image-accordion.php:324, widgets/notes.php:276, widgets/notes.php:340, widgets/post-author.php:112, widgets/post-custom-field.php:175, widgets/post-date.php:113, widgets/post-excerpt.php:199, widgets/post-featured-image.php:99, widgets/post-terms.php:111, widgets/post-title.php:100, widgets/site-counters.php:142, widgets/site-description.php:88, widgets/site-logo.php:95, widgets/site-title.php:88
|
471 |
msgid "Right"
|
472 |
msgstr ""
|
473 |
|
474 |
+
#: widgets/advanced-custom-fields.php:204, widgets/gravatar.php:140, widgets/notes.php:280, widgets/notes.php:344, widgets/post-author.php:116, widgets/post-custom-field.php:179, widgets/post-date.php:117, widgets/post-excerpt.php:207, widgets/post-featured-image.php:103, widgets/post-terms.php:115, widgets/post-title.php:104, widgets/site-counters.php:146, widgets/site-description.php:92, widgets/site-logo.php:99, widgets/site-title.php:92
|
475 |
msgid "Justified"
|
476 |
msgstr ""
|
477 |
|
478 |
+
#: widgets/advanced-custom-fields.php:218, widgets/flickr.php:111, widgets/gravatar.php:154, widgets/pinterest.php:111, widgets/post-author.php:130, widgets/post-custom-field.php:193, widgets/post-date.php:131, widgets/post-excerpt.php:235, widgets/post-featured-image.php:117, widgets/post-featured-image.php:137, widgets/post-terms.php:129, widgets/post-title.php:118, widgets/site-description.php:106, widgets/site-logo.php:113, widgets/site-title.php:106
|
479 |
msgid "Link to"
|
480 |
msgstr ""
|
481 |
|
482 |
+
#: widgets/advanced-custom-fields.php:222, widgets/flickr.php:115, widgets/gravatar.php:158, widgets/pinterest.php:115, widgets/post-author.php:134, widgets/post-custom-field.php:197, widgets/post-date.php:135, widgets/post-excerpt.php:243, widgets/post-featured-image.php:121, widgets/post-terms.php:133, widgets/post-title.php:122, widgets/site-description.php:110, widgets/site-logo.php:117, widgets/site-title.php:110
|
483 |
msgid "None"
|
484 |
msgstr ""
|
485 |
|
486 |
+
#: widgets/advanced-custom-fields.php:223, widgets/gravatar.php:159, widgets/post-author.php:135, widgets/post-custom-field.php:198, widgets/post-date.php:136, widgets/post-excerpt.php:245, widgets/post-featured-image.php:122, widgets/post-title.php:123, widgets/site-description.php:111, widgets/site-logo.php:118, widgets/site-title.php:111
|
487 |
+
msgid "Home URL"
|
488 |
+
msgstr ""
|
489 |
+
|
490 |
+
#: widgets/advanced-custom-fields.php:224, widgets/gravatar.php:160
|
491 |
msgid "Post URL"
|
492 |
msgstr ""
|
493 |
|
494 |
+
#: widgets/advanced-custom-fields.php:225
|
495 |
msgid "Other ACF Field"
|
496 |
msgstr ""
|
497 |
|
498 |
+
#: widgets/advanced-custom-fields.php:226, widgets/gravatar.php:161, widgets/post-author.php:142, widgets/post-custom-field.php:205, widgets/post-date.php:142, widgets/post-excerpt.php:257, widgets/post-featured-image.php:129, widgets/post-title.php:129, widgets/site-description.php:112, widgets/site-logo.php:119, widgets/site-title.php:112
|
499 |
msgid "Custom URL"
|
500 |
msgstr ""
|
501 |
|
502 |
+
#: widgets/advanced-custom-fields.php:234, widgets/gravatar.php:169, widgets/image-accordion.php:131, widgets/post-author.php:150, widgets/post-custom-field.php:213, widgets/post-date.php:150, widgets/post-excerpt.php:273, widgets/post-title.php:137, widgets/site-description.php:120, widgets/site-logo.php:127, widgets/site-title.php:120
|
503 |
msgid "Link"
|
504 |
msgstr ""
|
505 |
|
506 |
+
#: widgets/advanced-custom-fields.php:236, widgets/gravatar.php:171, widgets/image-accordion.php:133, widgets/post-author.php:152, widgets/post-custom-field.php:215, widgets/post-date.php:152, widgets/post-excerpt.php:277, widgets/post-featured-image.php:139, widgets/post-title.php:139, widgets/site-description.php:122, widgets/site-logo.php:129, widgets/site-title.php:122
|
507 |
msgid "http://your-link.com"
|
508 |
msgstr ""
|
509 |
|
510 |
+
#: widgets/advanced-custom-fields.php:250
|
511 |
msgid "Link to ACF Field"
|
512 |
msgstr ""
|
513 |
|
514 |
+
#: widgets/advanced-custom-fields.php:272, widgets/before-after-effect.php:356, widgets/image-accordion.php:365, widgets/notes.php:293, widgets/notes.php:357, widgets/post-author.php:180, widgets/post-custom-field.php:255, widgets/post-date.php:180, widgets/post-excerpt.php:333, widgets/post-terms.php:156, widgets/post-title.php:167, widgets/site-counters.php:170, widgets/site-counters.php:212, widgets/site-description.php:146, widgets/site-title.php:146
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
515 |
msgid "Text Color"
|
516 |
msgstr ""
|
517 |
|
518 |
+
#: widgets/advanced-custom-fields.php:303, widgets/gravatar.php:195, widgets/post-author.php:211, widgets/post-custom-field.php:286, widgets/post-featured-image.php:164, widgets/site-logo.php:153
|
519 |
msgid "Size (%)"
|
520 |
msgstr ""
|
521 |
|
522 |
+
#: widgets/advanced-custom-fields.php:328, widgets/flickr.php:203, widgets/gravatar.php:217, widgets/notes.php:155, widgets/pinterest.php:190, widgets/post-author.php:236, widgets/post-custom-field.php:311, widgets/post-featured-image.php:186, widgets/site-logo.php:175
|
523 |
msgid "Opacity (%)"
|
524 |
msgstr ""
|
525 |
|
526 |
+
#: widgets/advanced-custom-fields.php:352, widgets/gravatar.php:238, widgets/notes.php:176, widgets/post-author.php:260, widgets/post-custom-field.php:335, widgets/post-featured-image.php:207, widgets/site-logo.php:196
|
527 |
msgid "Angle (deg)"
|
528 |
msgstr ""
|
529 |
|
530 |
+
#: widgets/advanced-custom-fields.php:378, widgets/flickr.php:221, widgets/gravatar.php:261, widgets/notes.php:199, widgets/pinterest.php:208, widgets/post-author.php:286, widgets/post-custom-field.php:361, widgets/post-date.php:205, widgets/post-excerpt.php:383, widgets/post-featured-image.php:230, widgets/post-terms.php:181, widgets/post-title.php:192, widgets/site-counters.php:194, widgets/site-counters.php:236, widgets/site-description.php:171, widgets/site-logo.php:219, widgets/site-title.php:171
|
531 |
msgid "Hover Animation"
|
532 |
msgstr ""
|
533 |
|
534 |
+
#: widgets/advanced-custom-fields.php:387, widgets/gravatar.php:270, widgets/post-author.php:295, widgets/post-custom-field.php:370, widgets/post-featured-image.php:239, widgets/site-logo.php:228
|
535 |
msgid "Image Border"
|
536 |
msgstr ""
|
537 |
|
538 |
+
#: widgets/advanced-custom-fields.php:398, widgets/before-after-effect.php:553, widgets/gravatar.php:278, widgets/image-accordion.php:473, widgets/post-author.php:306, widgets/post-custom-field.php:381, widgets/post-featured-image.php:247, widgets/site-logo.php:236
|
539 |
msgid "Border Radius"
|
540 |
msgstr ""
|
541 |
|
542 |
+
#: widgets/before-after-effect.php:35, widgets/before-after-effect.php:57, widgets/before-after-effect.php:95
|
543 |
+
msgid "Before After Effect"
|
544 |
+
msgstr ""
|
545 |
+
|
546 |
+
#: widgets/before-after-effect.php:102, widgets/before-after-effect.php:139
|
547 |
+
msgid "Title & Image"
|
548 |
+
msgstr ""
|
549 |
+
|
550 |
+
#: widgets/before-after-effect.php:113
|
551 |
+
msgid "Before"
|
552 |
+
msgstr ""
|
553 |
+
|
554 |
+
#: widgets/before-after-effect.php:150
|
555 |
+
msgid "After"
|
556 |
+
msgstr ""
|
557 |
+
|
558 |
+
#: widgets/before-after-effect.php:176
|
559 |
+
msgid "Settings"
|
560 |
+
msgstr ""
|
561 |
+
|
562 |
+
#: widgets/before-after-effect.php:185
|
563 |
+
msgid "Orientation"
|
564 |
+
msgstr ""
|
565 |
+
|
566 |
+
#: widgets/before-after-effect.php:188
|
567 |
+
msgid "Horizontal"
|
568 |
+
msgstr ""
|
569 |
+
|
570 |
+
#: widgets/before-after-effect.php:189
|
571 |
+
msgid "Vertical"
|
572 |
+
msgstr ""
|
573 |
+
|
574 |
+
#: widgets/before-after-effect.php:199
|
575 |
+
msgid "Starting Position (%)"
|
576 |
+
msgstr ""
|
577 |
+
|
578 |
+
#: widgets/before-after-effect.php:221
|
579 |
+
msgid "Overlay"
|
580 |
+
msgstr ""
|
581 |
+
|
582 |
+
#: widgets/before-after-effect.php:229
|
583 |
+
msgid "Overlay Color"
|
584 |
+
msgstr ""
|
585 |
+
|
586 |
+
#: widgets/before-after-effect.php:252
|
587 |
+
msgid "Separetor"
|
588 |
+
msgstr ""
|
589 |
+
|
590 |
+
#: widgets/before-after-effect.php:260
|
591 |
+
msgid "Separetor Color"
|
592 |
+
msgstr ""
|
593 |
+
|
594 |
+
#: widgets/before-after-effect.php:284
|
595 |
+
msgid "Separetor Width (px)"
|
596 |
+
msgstr ""
|
597 |
+
|
598 |
+
#: widgets/before-after-effect.php:310
|
599 |
+
msgid "Separetor Radius"
|
600 |
+
msgstr ""
|
601 |
+
|
602 |
+
#: widgets/before-after-effect.php:348, widgets/notes.php:236
|
603 |
+
msgid "Title"
|
604 |
+
msgstr ""
|
605 |
+
|
606 |
+
#: widgets/before-after-effect.php:373, widgets/image-accordion.php:382
|
607 |
+
msgid "Background Color"
|
608 |
+
msgstr ""
|
609 |
+
|
610 |
+
#: widgets/before-after-effect.php:402, widgets/before-after-effect.php:453
|
611 |
+
msgid "1st Title Position (%)"
|
612 |
+
msgstr ""
|
613 |
+
|
614 |
+
#: widgets/before-after-effect.php:428, widgets/before-after-effect.php:479
|
615 |
+
msgid "2nd Title Position (%)"
|
616 |
+
msgstr ""
|
617 |
+
|
618 |
+
#: widgets/before-after-effect.php:504, widgets/image-accordion.php:427
|
619 |
+
msgid "Margin"
|
620 |
+
msgstr ""
|
621 |
+
|
622 |
+
#: widgets/before-after-effect.php:525, widgets/flickr.php:229, widgets/image-accordion.php:446, widgets/notes.php:207, widgets/pinterest.php:216
|
623 |
+
msgid "Padding"
|
624 |
+
msgstr ""
|
625 |
+
|
626 |
+
#: widgets/flickr.php:30, widgets/flickr.php:48, widgets/flickr.php:86, widgets/flickr.php:142
|
627 |
+
msgid "Flickr"
|
628 |
+
msgstr ""
|
629 |
+
|
630 |
+
#: widgets/flickr.php:93
|
631 |
+
msgid "Flickr ID"
|
632 |
+
msgstr ""
|
633 |
+
|
634 |
+
#: widgets/flickr.php:102, widgets/pinterest.php:102
|
635 |
+
msgid "Links"
|
636 |
+
msgstr ""
|
637 |
+
|
638 |
+
#: widgets/flickr.php:116
|
639 |
+
msgid "Image page on Flickr"
|
640 |
+
msgstr ""
|
641 |
+
|
642 |
+
#: widgets/flickr.php:124, widgets/pinterest.php:124
|
643 |
+
msgid "Open links in"
|
644 |
+
msgstr ""
|
645 |
+
|
646 |
+
#: widgets/flickr.php:128, widgets/pinterest.php:128
|
647 |
+
msgid "Same window"
|
648 |
+
msgstr ""
|
649 |
+
|
650 |
+
#: widgets/flickr.php:129, widgets/pinterest.php:129
|
651 |
+
msgid "New window"
|
652 |
+
msgstr ""
|
653 |
+
|
654 |
+
#: widgets/flickr.php:150
|
655 |
+
msgid "Size"
|
656 |
+
msgstr ""
|
657 |
+
|
658 |
+
#: widgets/flickr.php:154
|
659 |
+
msgid "Thumbnails Grid"
|
660 |
+
msgstr ""
|
661 |
+
|
662 |
+
#: widgets/flickr.php:155
|
663 |
+
msgid "Full Images Grid"
|
664 |
+
msgstr ""
|
665 |
+
|
666 |
+
#: widgets/flickr.php:163, widgets/pinterest.php:150
|
667 |
+
msgid "Colomns Per Row"
|
668 |
+
msgstr ""
|
669 |
+
|
670 |
+
#: widgets/flickr.php:183, widgets/pinterest.php:170
|
671 |
+
msgid "Number of Rows"
|
672 |
+
msgstr ""
|
673 |
+
|
674 |
+
#: widgets/gravatar.php:32, widgets/gravatar.php:50, widgets/gravatar.php:88, widgets/gravatar.php:187
|
675 |
msgid "Gravatar"
|
676 |
msgstr ""
|
677 |
|
678 |
+
#: widgets/gravatar.php:95
|
679 |
msgid "Email"
|
680 |
msgstr ""
|
681 |
|
682 |
+
#: widgets/gravatar.php:97
|
683 |
msgid "your@email.com"
|
684 |
msgstr ""
|
685 |
|
686 |
+
#: widgets/image-accordion.php:37, widgets/image-accordion.php:55, widgets/image-accordion.php:93
|
687 |
+
msgid "Image Accordion"
|
688 |
+
msgstr ""
|
689 |
+
|
690 |
+
#: widgets/image-accordion.php:100
|
691 |
+
msgid "Images"
|
692 |
+
msgstr ""
|
693 |
+
|
694 |
+
#: widgets/image-accordion.php:104
|
695 |
+
msgid "Type out sentence"
|
696 |
+
msgstr ""
|
697 |
+
|
698 |
+
#: widgets/image-accordion.php:107
|
699 |
+
msgid "and delete them"
|
700 |
+
msgstr ""
|
701 |
+
|
702 |
+
#: widgets/image-accordion.php:110
|
703 |
+
msgid "with beautifull animation"
|
704 |
+
msgstr ""
|
705 |
+
|
706 |
+
#: widgets/image-accordion.php:124, widgets/image-accordion.php:126, widgets/image-accordion.php:303
|
707 |
+
msgid "Caption"
|
708 |
+
msgstr ""
|
709 |
+
|
710 |
+
#: widgets/image-accordion.php:145
|
711 |
+
msgid "Container"
|
712 |
+
msgstr ""
|
713 |
+
|
714 |
+
#: widgets/image-accordion.php:153
|
715 |
+
msgid "Height"
|
716 |
+
msgstr ""
|
717 |
+
|
718 |
+
#: widgets/image-accordion.php:176
|
719 |
+
msgid "Direction"
|
720 |
+
msgstr ""
|
721 |
+
|
722 |
+
#: widgets/image-accordion.php:181
|
723 |
+
msgid "Right to Left"
|
724 |
+
msgstr ""
|
725 |
+
|
726 |
+
#: widgets/image-accordion.php:185
|
727 |
+
msgid "Left to Right"
|
728 |
+
msgstr ""
|
729 |
+
|
730 |
+
#: widgets/image-accordion.php:225
|
731 |
+
msgid "Image Alignment"
|
732 |
+
msgstr ""
|
733 |
+
|
734 |
+
#: widgets/image-accordion.php:252
|
735 |
+
msgid "Transition Speed (ms)"
|
736 |
+
msgstr ""
|
737 |
+
|
738 |
+
#: widgets/image-accordion.php:279
|
739 |
+
msgid "Opened Image Size (%)"
|
740 |
+
msgstr ""
|
741 |
+
|
742 |
+
#: widgets/image-accordion.php:338
|
743 |
+
msgid "Vertical Alignment"
|
744 |
+
msgstr ""
|
745 |
+
|
746 |
+
#: widgets/image-accordion.php:343
|
747 |
+
msgid "Top"
|
748 |
+
msgstr ""
|
749 |
+
|
750 |
+
#: widgets/image-accordion.php:347
|
751 |
+
msgid "Middle"
|
752 |
+
msgstr ""
|
753 |
+
|
754 |
+
#: widgets/image-accordion.php:351
|
755 |
+
msgid "Bottom"
|
756 |
+
msgstr ""
|
757 |
+
|
758 |
+
#: widgets/image-accordion.php:501
|
759 |
+
msgid "Entrance Animation"
|
760 |
+
msgstr ""
|
761 |
+
|
762 |
+
#: widgets/notes.php:34, widgets/notes.php:52
|
763 |
+
msgid "Notes"
|
764 |
+
msgstr ""
|
765 |
+
|
766 |
+
#: widgets/notes.php:90, widgets/notes.php:115
|
767 |
+
msgid "Note"
|
768 |
+
msgstr ""
|
769 |
+
|
770 |
+
#: widgets/notes.php:97
|
771 |
+
msgid "Note Title"
|
772 |
+
msgstr ""
|
773 |
+
|
774 |
+
#: widgets/notes.php:105
|
775 |
+
msgid "Note Content"
|
776 |
+
msgstr ""
|
777 |
+
|
778 |
+
#: widgets/notes.php:123
|
779 |
+
msgid "Background"
|
780 |
+
msgstr ""
|
781 |
+
|
782 |
+
#: widgets/notes.php:139
|
783 |
+
msgid "Sticker Color"
|
784 |
+
msgstr ""
|
785 |
+
|
786 |
+
#: widgets/notes.php:320
|
787 |
+
msgid "Content"
|
788 |
+
msgstr ""
|
789 |
+
|
790 |
+
#: widgets/pinterest.php:30, widgets/pinterest.php:48, widgets/pinterest.php:86, widgets/pinterest.php:142
|
791 |
+
msgid "Pinterest"
|
792 |
+
msgstr ""
|
793 |
+
|
794 |
+
#: widgets/pinterest.php:93
|
795 |
+
msgid "Pinterest Username"
|
796 |
+
msgstr ""
|
797 |
+
|
798 |
+
#: widgets/pinterest.php:95
|
799 |
+
msgid "pinterest"
|
800 |
+
msgstr ""
|
801 |
+
|
802 |
+
#: widgets/pinterest.php:116
|
803 |
+
msgid "Image page on pinterest"
|
804 |
+
msgstr ""
|
805 |
+
|
806 |
+
#: widgets/post-author.php:39, widgets/post-author.php:61, widgets/post-author.php:170
|
807 |
msgid "%s Author"
|
808 |
msgstr ""
|
809 |
|
811 |
msgid "Author"
|
812 |
msgstr ""
|
813 |
|
814 |
+
#: widgets/post-author.php:138, widgets/post-custom-field.php:201, widgets/post-date.php:139, widgets/post-excerpt.php:251, widgets/post-featured-image.php:125, widgets/post-title.php:126
|
815 |
msgid "%s URL"
|
816 |
msgstr ""
|
817 |
|
818 |
+
#: widgets/post-author.php:141
|
819 |
msgid "Author URL"
|
820 |
msgstr ""
|
821 |
|
822 |
+
#: widgets/post-author.php:434
|
823 |
msgid "First Name"
|
824 |
msgstr ""
|
825 |
|
826 |
+
#: widgets/post-author.php:435
|
827 |
msgid "Last Name"
|
828 |
msgstr ""
|
829 |
|
830 |
+
#: widgets/post-author.php:436
|
831 |
msgid "First Name + Last Name"
|
832 |
msgstr ""
|
833 |
|
834 |
+
#: widgets/post-author.php:437
|
835 |
msgid "Last Name + First Name"
|
836 |
msgstr ""
|
837 |
|
838 |
+
#: widgets/post-author.php:438
|
839 |
msgid "Nick Name"
|
840 |
msgstr ""
|
841 |
|
842 |
+
#: widgets/post-author.php:439
|
843 |
msgid "Display Name"
|
844 |
msgstr ""
|
845 |
|
846 |
+
#: widgets/post-author.php:440
|
847 |
msgid "User Name"
|
848 |
msgstr ""
|
849 |
|
850 |
+
#: widgets/post-author.php:441
|
851 |
msgid "User Bio"
|
852 |
msgstr ""
|
853 |
|
854 |
+
#: widgets/post-author.php:442
|
855 |
msgid "User Image"
|
856 |
msgstr ""
|
857 |
|
867 |
msgid "No custom styling can be applied as each theme uses it's own CSS classes and IDs."
|
868 |
msgstr ""
|
869 |
|
870 |
+
#: widgets/post-custom-field.php:39, widgets/post-custom-field.php:63, widgets/post-custom-field.php:105, widgets/post-custom-field.php:245
|
871 |
msgid "%s Custom Field"
|
872 |
msgstr ""
|
873 |
|
874 |
+
#: widgets/post-custom-field.php:121
|
875 |
msgid "Custom Field"
|
876 |
msgstr ""
|
877 |
|
878 |
+
#: widgets/post-custom-field.php:204
|
879 |
msgid "Other Custom Field"
|
880 |
msgstr ""
|
881 |
|
882 |
+
#: widgets/post-custom-field.php:229
|
883 |
msgid "Custom Field Link"
|
884 |
msgstr ""
|
885 |
|
886 |
+
#: widgets/post-date.php:37, widgets/post-date.php:59, widgets/post-date.php:170
|
887 |
msgid "%s Date"
|
888 |
msgstr ""
|
889 |
|
899 |
msgid "Last Modified Date"
|
900 |
msgstr ""
|
901 |
|
902 |
+
#: widgets/post-excerpt.php:73, widgets/post-excerpt.php:117, widgets/post-excerpt.php:313
|
903 |
msgid "%s Excerpt"
|
904 |
msgstr ""
|
905 |
|
906 |
+
#: widgets/post-featured-image.php:38, widgets/post-featured-image.php:60, widgets/post-featured-image.php:154
|
907 |
msgid "%s Featured Image"
|
908 |
msgstr ""
|
909 |
|
910 |
+
#: widgets/post-featured-image.php:79
|
911 |
msgid "Image Size"
|
912 |
msgstr ""
|
913 |
|
927 |
msgid "Term"
|
928 |
msgstr ""
|
929 |
|
930 |
+
#: widgets/post-title.php:37, widgets/post-title.php:59, widgets/post-title.php:157
|
931 |
msgid "%s Title"
|
932 |
msgstr ""
|
933 |
|
954 |
#: widgets/site-counters.php:204
|
955 |
msgid "Label"
|
956 |
msgstr ""
|
|
|
|
|
|
|
|
{freemius → libs/freemius}/LICENSE.txt
RENAMED
File without changes
|
{freemius → libs/freemius}/README.md
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/account.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/add-ons.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/checkout.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/common.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/connect.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/deactivation-feedback.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/debug.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/dialog-boxes.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/admin/license-activation.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/css/common.css
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/img/plugin-icon.png
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/img/press-elements.png
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/js/nojquery.ba-postmessage.js
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/js/nojquery.ba-postmessage.min.js
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/js/postmessage.js
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/_colors.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/_functions.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/_load.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/_mixins.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/_start.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/_vars.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/_deactivation-feedback.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/_license-activation.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/_license-key-resend.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/_modal-common.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/account.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/add-ons.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/checkout.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/common.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/connect.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/debug.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/assets/scss/admin/dialog-boxes.scss
RENAMED
File without changes
|
{freemius → libs/freemius}/config.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/class-freemius-abstract.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/class-freemius.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/class-fs-api.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/class-fs-logger.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/class-fs-plugin-updater.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/class-fs-security.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/debug/class-fs-debug-bar-panel.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/debug/debug-bar-start.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/debug/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-billing.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-entity.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-payment.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-plugin-info.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-plugin-license.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-plugin-plan.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-plugin-tag.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-plugin.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-pricing.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-scope-entity.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-site.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-subscription.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/class-fs-user.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/entities/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/fs-core-functions.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/fs-essential-functions.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/fs-plugin-info-dialog.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/i18n.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/l10n.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-admin-menu-manager.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-admin-notice-manager.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-cache-manager.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-key-value-storage.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-license-manager.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-option-manager.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-plan-manager.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/class-fs-plugin-manager.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/managers/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/Exceptions/ArgumentNotExistException.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/Exceptions/EmptyArgumentException.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/Exceptions/Exception.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/Exceptions/InvalidArgumentException.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/Exceptions/OAuthException.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/Exceptions/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/Freemius.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/FreemiusBase.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/LICENSE.txt
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/sdk/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/supplements/fs-essential-functions-1.1.7.1.php
RENAMED
File without changes
|
{freemius → libs/freemius}/includes/supplements/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-da_DK.mo
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-da_DK.po
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-en.mo
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-en.po
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-he.mo
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-he.po
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-it_IT.mo
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-it_IT.po
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-ja_JP.mo
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius-ja_JP.po
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/freemius.pot
RENAMED
File without changes
|
{freemius → libs/freemius}/languages/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/require.php
RENAMED
File without changes
|
{freemius → libs/freemius}/start.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/account.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/add-ons.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/add-trial-to-pricing.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/admin-notice.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/all-admin-notice.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/billing.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/checkout-legacy.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/checkout.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/connect.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/contact.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/debug.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/debug/api-calls.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/debug/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/debug/logger.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/debug/plugins-themes-sync.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/debug/scheduled-crons.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/email.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/firewall-issues-js.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/deactivation/contact.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/deactivation/form.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/deactivation/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/deactivation/retry-skip.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/license-activation.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/optout.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/resend-key.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/forms/trial-start.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/plugin-icon.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/plugin-info/description.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/plugin-info/features.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/plugin-info/index.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/plugin-info/screenshots.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/powered-by.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/pricing.php
RENAMED
File without changes
|
{freemius → libs/freemius}/templates/sticky-admin-notice-js.php
RENAMED
File without changes
|
libs/twentytwenty/jquery.event.move.js
ADDED
@@ -0,0 +1,586 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
// jquery.event.move
|
2 |
+
//
|
3 |
+
// 1.3.6
|
4 |
+
//
|
5 |
+
// Stephen Band
|
6 |
+
//
|
7 |
+
// Triggers 'movestart', 'move' and 'moveend' events after
|
8 |
+
// mousemoves following a mousedown cross a distance threshold,
|
9 |
+
// similar to the native 'dragstart', 'drag' and 'dragend' events.
|
10 |
+
// Move events are throttled to animation frames. Move event objects
|
11 |
+
// have the properties:
|
12 |
+
//
|
13 |
+
// pageX:
|
14 |
+
// pageY: Page coordinates of pointer.
|
15 |
+
// startX:
|
16 |
+
// startY: Page coordinates of pointer at movestart.
|
17 |
+
// distX:
|
18 |
+
// distY: Distance the pointer has moved since movestart.
|
19 |
+
// deltaX:
|
20 |
+
// deltaY: Distance the finger has moved since last event.
|
21 |
+
// velocityX:
|
22 |
+
// velocityY: Average velocity over last few events.
|
23 |
+
|
24 |
+
|
25 |
+
(function (module) {
|
26 |
+
if (typeof define === 'function' && define.amd) {
|
27 |
+
// AMD. Register as an anonymous module.
|
28 |
+
define(['jquery'], module);
|
29 |
+
} else {
|
30 |
+
// Browser globals
|
31 |
+
module(jQuery);
|
32 |
+
}
|
33 |
+
})(function(jQuery, undefined){
|
34 |
+
|
35 |
+
var // Number of pixels a pressed pointer travels before movestart
|
36 |
+
// event is fired.
|
37 |
+
threshold = 6,
|
38 |
+
|
39 |
+
add = jQuery.event.add,
|
40 |
+
|
41 |
+
remove = jQuery.event.remove,
|
42 |
+
|
43 |
+
// Just sugar, so we can have arguments in the same order as
|
44 |
+
// add and remove.
|
45 |
+
trigger = function(node, type, data) {
|
46 |
+
jQuery.event.trigger(type, data, node);
|
47 |
+
},
|
48 |
+
|
49 |
+
// Shim for requestAnimationFrame, falling back to timer. See:
|
50 |
+
// see http://paulirish.com/2011/requestanimationframe-for-smart-animating/
|
51 |
+
requestFrame = (function(){
|
52 |
+
return (
|
53 |
+
window.requestAnimationFrame ||
|
54 |
+
window.webkitRequestAnimationFrame ||
|
55 |
+
window.mozRequestAnimationFrame ||
|
56 |
+
window.oRequestAnimationFrame ||
|
57 |
+
window.msRequestAnimationFrame ||
|
58 |
+
function(fn, element){
|
59 |
+
return window.setTimeout(function(){
|
60 |
+
fn();
|
61 |
+
}, 25);
|
62 |
+
}
|
63 |
+
);
|
64 |
+
})(),
|
65 |
+
|
66 |
+
ignoreTags = {
|
67 |
+
textarea: true,
|
68 |
+
input: true,
|
69 |
+
select: true,
|
70 |
+
button: true
|
71 |
+
},
|
72 |
+
|
73 |
+
mouseevents = {
|
74 |
+
move: 'mousemove',
|
75 |
+
cancel: 'mouseup dragstart',
|
76 |
+
end: 'mouseup'
|
77 |
+
},
|
78 |
+
|
79 |
+
touchevents = {
|
80 |
+
move: 'touchmove',
|
81 |
+
cancel: 'touchend',
|
82 |
+
end: 'touchend'
|
83 |
+
};
|
84 |
+
|
85 |
+
|
86 |
+
// Constructors
|
87 |
+
|
88 |
+
function Timer(fn){
|
89 |
+
var callback = fn,
|
90 |
+
active = false,
|
91 |
+
running = false;
|
92 |
+
|
93 |
+
function trigger(time) {
|
94 |
+
if (active){
|
95 |
+
callback();
|
96 |
+
requestFrame(trigger);
|
97 |
+
running = true;
|
98 |
+
active = false;
|
99 |
+
}
|
100 |
+
else {
|
101 |
+
running = false;
|
102 |
+
}
|
103 |
+
}
|
104 |
+
|
105 |
+
this.kick = function(fn) {
|
106 |
+
active = true;
|
107 |
+
if (!running) { trigger(); }
|
108 |
+
};
|
109 |
+
|
110 |
+
this.end = function(fn) {
|
111 |
+
var cb = callback;
|
112 |
+
|
113 |
+
if (!fn) { return; }
|
114 |
+
|
115 |
+
// If the timer is not running, simply call the end callback.
|
116 |
+
if (!running) {
|
117 |
+
fn();
|
118 |
+
}
|
119 |
+
// If the timer is running, and has been kicked lately, then
|
120 |
+
// queue up the current callback and the end callback, otherwise
|
121 |
+
// just the end callback.
|
122 |
+
else {
|
123 |
+
callback = active ?
|
124 |
+
function(){ cb(); fn(); } :
|
125 |
+
fn ;
|
126 |
+
|
127 |
+
active = true;
|
128 |
+
}
|
129 |
+
};
|
130 |
+
}
|
131 |
+
|
132 |
+
|
133 |
+
// Functions
|
134 |
+
|
135 |
+
function returnTrue() {
|
136 |
+
return true;
|
137 |
+
}
|
138 |
+
|
139 |
+
function returnFalse() {
|
140 |
+
return false;
|
141 |
+
}
|
142 |
+
|
143 |
+
function preventDefault(e) {
|
144 |
+
e.preventDefault();
|
145 |
+
}
|
146 |
+
|
147 |
+
function preventIgnoreTags(e) {
|
148 |
+
// Don't prevent interaction with form elements.
|
149 |
+
if (ignoreTags[ e.target.tagName.toLowerCase() ]) { return; }
|
150 |
+
|
151 |
+
e.preventDefault();
|
152 |
+
}
|
153 |
+
|
154 |
+
function isLeftButton(e) {
|
155 |
+
// Ignore mousedowns on any button other than the left (or primary)
|
156 |
+
// mouse button, or when a modifier key is pressed.
|
157 |
+
return (e.which === 1 && !e.ctrlKey && !e.altKey);
|
158 |
+
}
|
159 |
+
|
160 |
+
function identifiedTouch(touchList, id) {
|
161 |
+
var i, l;
|
162 |
+
|
163 |
+
if (touchList.identifiedTouch) {
|
164 |
+
return touchList.identifiedTouch(id);
|
165 |
+
}
|
166 |
+
|
167 |
+
// touchList.identifiedTouch() does not exist in
|
168 |
+
// webkit yet… we must do the search ourselves...
|
169 |
+
|
170 |
+
i = -1;
|
171 |
+
l = touchList.length;
|
172 |
+
|
173 |
+
while (++i < l) {
|
174 |
+
if (touchList[i].identifier === id) {
|
175 |
+
return touchList[i];
|
176 |
+
}
|
177 |
+
}
|
178 |
+
}
|
179 |
+
|
180 |
+
function changedTouch(e, event) {
|
181 |
+
var touch = identifiedTouch(e.changedTouches, event.identifier);
|
182 |
+
|
183 |
+
// This isn't the touch you're looking for.
|
184 |
+
if (!touch) { return; }
|
185 |
+
|
186 |
+
// Chrome Android (at least) includes touches that have not
|
187 |
+
// changed in e.changedTouches. That's a bit annoying. Check
|
188 |
+
// that this touch has changed.
|
189 |
+
if (touch.pageX === event.pageX && touch.pageY === event.pageY) { return; }
|
190 |
+
|
191 |
+
return touch;
|
192 |
+
}
|
193 |
+
|
194 |
+
|
195 |
+
// Handlers that decide when the first movestart is triggered
|
196 |
+
|
197 |
+
function mousedown(e){
|
198 |
+
var data;
|
199 |
+
|
200 |
+
if (!isLeftButton(e)) { return; }
|
201 |
+
|
202 |
+
data = {
|
203 |
+
target: e.target,
|
204 |
+
startX: e.pageX,
|
205 |
+
startY: e.pageY,
|
206 |
+
timeStamp: e.timeStamp
|
207 |
+
};
|
208 |
+
|
209 |
+
add(document, mouseevents.move, mousemove, data);
|
210 |
+
add(document, mouseevents.cancel, mouseend, data);
|
211 |
+
}
|
212 |
+
|
213 |
+
function mousemove(e){
|
214 |
+
var data = e.data;
|
215 |
+
|
216 |
+
checkThreshold(e, data, e, removeMouse);
|
217 |
+
}
|
218 |
+
|
219 |
+
function mouseend(e) {
|
220 |
+
removeMouse();
|
221 |
+
}
|
222 |
+
|
223 |
+
function removeMouse() {
|
224 |
+
remove(document, mouseevents.move, mousemove);
|
225 |
+
remove(document, mouseevents.cancel, mouseend);
|
226 |
+
}
|
227 |
+
|
228 |
+
function touchstart(e) {
|
229 |
+
var touch, template;
|
230 |
+
|
231 |
+
// Don't get in the way of interaction with form elements.
|
232 |
+
if (ignoreTags[ e.target.tagName.toLowerCase() ]) { return; }
|
233 |
+
|
234 |
+
touch = e.changedTouches[0];
|
235 |
+
|
236 |
+
// iOS live updates the touch objects whereas Android gives us copies.
|
237 |
+
// That means we can't trust the touchstart object to stay the same,
|
238 |
+
// so we must copy the data. This object acts as a template for
|
239 |
+
// movestart, move and moveend event objects.
|
240 |
+
template = {
|
241 |
+
target: touch.target,
|
242 |
+
startX: touch.pageX,
|
243 |
+
startY: touch.pageY,
|
244 |
+
timeStamp: e.timeStamp,
|
245 |
+
identifier: touch.identifier
|
246 |
+
};
|
247 |
+
|
248 |
+
// Use the touch identifier as a namespace, so that we can later
|
249 |
+
// remove handlers pertaining only to this touch.
|
250 |
+
add(document, touchevents.move + '.' + touch.identifier, touchmove, template);
|
251 |
+
add(document, touchevents.cancel + '.' + touch.identifier, touchend, template);
|
252 |
+
}
|
253 |
+
|
254 |
+
function touchmove(e){
|
255 |
+
var data = e.data,
|
256 |
+
touch = changedTouch(e, data);
|
257 |
+
|
258 |
+
if (!touch) { return; }
|
259 |
+
|
260 |
+
checkThreshold(e, data, touch, removeTouch);
|
261 |
+
}
|
262 |
+
|
263 |
+
function touchend(e) {
|
264 |
+
var template = e.data,
|
265 |
+
touch = identifiedTouch(e.changedTouches, template.identifier);
|
266 |
+
|
267 |
+
if (!touch) { return; }
|
268 |
+
|
269 |
+
removeTouch(template.identifier);
|
270 |
+
}
|
271 |
+
|
272 |
+
function removeTouch(identifier) {
|
273 |
+
remove(document, '.' + identifier, touchmove);
|
274 |
+
remove(document, '.' + identifier, touchend);
|
275 |
+
}
|
276 |
+
|
277 |
+
|
278 |
+
// Logic for deciding when to trigger a movestart.
|
279 |
+
|
280 |
+
function checkThreshold(e, template, touch, fn) {
|
281 |
+
var distX = touch.pageX - template.startX,
|
282 |
+
distY = touch.pageY - template.startY;
|
283 |
+
|
284 |
+
// Do nothing if the threshold has not been crossed.
|
285 |
+
if ((distX * distX) + (distY * distY) < (threshold * threshold)) { return; }
|
286 |
+
|
287 |
+
triggerStart(e, template, touch, distX, distY, fn);
|
288 |
+
}
|
289 |
+
|
290 |
+
function handled() {
|
291 |
+
// this._handled should return false once, and after return true.
|
292 |
+
this._handled = returnTrue;
|
293 |
+
return false;
|
294 |
+
}
|
295 |
+
|
296 |
+
function flagAsHandled(e) {
|
297 |
+
e._handled();
|
298 |
+
}
|
299 |
+
|
300 |
+
function triggerStart(e, template, touch, distX, distY, fn) {
|
301 |
+
var node = template.target,
|
302 |
+
touches, time;
|
303 |
+
|
304 |
+
touches = e.targetTouches;
|
305 |
+
time = e.timeStamp - template.timeStamp;
|
306 |
+
|
307 |
+
// Create a movestart object with some special properties that
|
308 |
+
// are passed only to the movestart handlers.
|
309 |
+
template.type = 'movestart';
|
310 |
+
template.distX = distX;
|
311 |
+
template.distY = distY;
|
312 |
+
template.deltaX = distX;
|
313 |
+
template.deltaY = distY;
|
314 |
+
template.pageX = touch.pageX;
|
315 |
+
template.pageY = touch.pageY;
|
316 |
+
template.velocityX = distX / time;
|
317 |
+
template.velocityY = distY / time;
|
318 |
+
template.targetTouches = touches;
|
319 |
+
template.finger = touches ?
|
320 |
+
touches.length :
|
321 |
+
1 ;
|
322 |
+
|
323 |
+
// The _handled method is fired to tell the default movestart
|
324 |
+
// handler that one of the move events is bound.
|
325 |
+
template._handled = handled;
|
326 |
+
|
327 |
+
// Pass the touchmove event so it can be prevented if or when
|
328 |
+
// movestart is handled.
|
329 |
+
template._preventTouchmoveDefault = function() {
|
330 |
+
e.preventDefault();
|
331 |
+
};
|
332 |
+
|
333 |
+
// Trigger the movestart event.
|
334 |
+
trigger(template.target, template);
|
335 |
+
|
336 |
+
// Unbind handlers that tracked the touch or mouse up till now.
|
337 |
+
fn(template.identifier);
|
338 |
+
}
|
339 |
+
|
340 |
+
|
341 |
+
// Handlers that control what happens following a movestart
|
342 |
+
|
343 |
+
function activeMousemove(e) {
|
344 |
+
var timer = e.data.timer;
|
345 |
+
|
346 |
+
e.data.touch = e;
|
347 |
+
e.data.timeStamp = e.timeStamp;
|
348 |
+
timer.kick();
|
349 |
+
}
|
350 |
+
|
351 |
+
function activeMouseend(e) {
|
352 |
+
var event = e.data.event,
|
353 |
+
timer = e.data.timer;
|
354 |
+
|
355 |
+
removeActiveMouse();
|
356 |
+
|
357 |
+
endEvent(event, timer, function() {
|
358 |
+
// Unbind the click suppressor, waiting until after mouseup
|
359 |
+
// has been handled.
|
360 |
+
setTimeout(function(){
|
361 |
+
remove(event.target, 'click', returnFalse);
|
362 |
+
}, 0);
|
363 |
+
});
|
364 |
+
}
|
365 |
+
|
366 |
+
function removeActiveMouse(event) {
|
367 |
+
remove(document, mouseevents.move, activeMousemove);
|
368 |
+
remove(document, mouseevents.end, activeMouseend);
|
369 |
+
}
|
370 |
+
|
371 |
+
function activeTouchmove(e) {
|
372 |
+
var event = e.data.event,
|
373 |
+
timer = e.data.timer,
|
374 |
+
touch = changedTouch(e, event);
|
375 |
+
|
376 |
+
if (!touch) { return; }
|
377 |
+
|
378 |
+
// Stop the interface from gesturing
|
379 |
+
e.preventDefault();
|
380 |
+
|
381 |
+
event.targetTouches = e.targetTouches;
|
382 |
+
e.data.touch = touch;
|
383 |
+
e.data.timeStamp = e.timeStamp;
|
384 |
+
timer.kick();
|
385 |
+
}
|
386 |
+
|
387 |
+
function activeTouchend(e) {
|
388 |
+
var event = e.data.event,
|
389 |
+
timer = e.data.timer,
|
390 |
+
touch = identifiedTouch(e.changedTouches, event.identifier);
|
391 |
+
|
392 |
+
// This isn't the touch you're looking for.
|
393 |
+
if (!touch) { return; }
|
394 |
+
|
395 |
+
removeActiveTouch(event);
|
396 |
+
endEvent(event, timer);
|
397 |
+
}
|
398 |
+
|
399 |
+
function removeActiveTouch(event) {
|
400 |
+
remove(document, '.' + event.identifier, activeTouchmove);
|
401 |
+
remove(document, '.' + event.identifier, activeTouchend);
|
402 |
+
}
|
403 |
+
|
404 |
+
|
405 |
+
// Logic for triggering move and moveend events
|
406 |
+
|
407 |
+
function updateEvent(event, touch, timeStamp, timer) {
|
408 |
+
var time = timeStamp - event.timeStamp;
|
409 |
+
|
410 |
+
event.type = 'move';
|
411 |
+
event.distX = touch.pageX - event.startX;
|
412 |
+
event.distY = touch.pageY - event.startY;
|
413 |
+
event.deltaX = touch.pageX - event.pageX;
|
414 |
+
event.deltaY = touch.pageY - event.pageY;
|
415 |
+
|
416 |
+
// Average the velocity of the last few events using a decay
|
417 |
+
// curve to even out spurious jumps in values.
|
418 |
+
event.velocityX = 0.3 * event.velocityX + 0.7 * event.deltaX / time;
|
419 |
+
event.velocityY = 0.3 * event.velocityY + 0.7 * event.deltaY / time;
|
420 |
+
event.pageX = touch.pageX;
|
421 |
+
event.pageY = touch.pageY;
|
422 |
+
}
|
423 |
+
|
424 |
+
function endEvent(event, timer, fn) {
|
425 |
+
timer.end(function(){
|
426 |
+
event.type = 'moveend';
|
427 |
+
|
428 |
+
trigger(event.target, event);
|
429 |
+
|
430 |
+
return fn && fn();
|
431 |
+
});
|
432 |
+
}
|
433 |
+
|
434 |
+
|
435 |
+
// jQuery special event definition
|
436 |
+
|
437 |
+
function setup(data, namespaces, eventHandle) {
|
438 |
+
// Stop the node from being dragged
|
439 |
+
//add(this, 'dragstart.move drag.move', preventDefault);
|
440 |
+
|
441 |
+
// Prevent text selection and touch interface scrolling
|
442 |
+
//add(this, 'mousedown.move', preventIgnoreTags);
|
443 |
+
|
444 |
+
// Tell movestart default handler that we've handled this
|
445 |
+
add(this, 'movestart.move', flagAsHandled);
|
446 |
+
|
447 |
+
// Don't bind to the DOM. For speed.
|
448 |
+
return true;
|
449 |
+
}
|
450 |
+
|
451 |
+
function teardown(namespaces) {
|
452 |
+
remove(this, 'dragstart drag', preventDefault);
|
453 |
+
remove(this, 'mousedown touchstart', preventIgnoreTags);
|
454 |
+
remove(this, 'movestart', flagAsHandled);
|
455 |
+
|
456 |
+
// Don't bind to the DOM. For speed.
|
457 |
+
return true;
|
458 |
+
}
|
459 |
+
|
460 |
+
function addMethod(handleObj) {
|
461 |
+
// We're not interested in preventing defaults for handlers that
|
462 |
+
// come from internal move or moveend bindings
|
463 |
+
if (handleObj.namespace === "move" || handleObj.namespace === "moveend") {
|
464 |
+
return;
|
465 |
+
}
|
466 |
+
|
467 |
+
// Stop the node from being dragged
|
468 |
+
add(this, 'dragstart.' + handleObj.guid + ' drag.' + handleObj.guid, preventDefault, undefined, handleObj.selector);
|
469 |
+
|
470 |
+
// Prevent text selection and touch interface scrolling
|
471 |
+
add(this, 'mousedown.' + handleObj.guid, preventIgnoreTags, undefined, handleObj.selector);
|
472 |
+
}
|
473 |
+
|
474 |
+
function removeMethod(handleObj) {
|
475 |
+
if (handleObj.namespace === "move" || handleObj.namespace === "moveend") {
|
476 |
+
return;
|
477 |
+
}
|
478 |
+
|
479 |
+
remove(this, 'dragstart.' + handleObj.guid + ' drag.' + handleObj.guid);
|
480 |
+
remove(this, 'mousedown.' + handleObj.guid);
|
481 |
+
}
|
482 |
+
|
483 |
+
jQuery.event.special.movestart = {
|
484 |
+
setup: setup,
|
485 |
+
teardown: teardown,
|
486 |
+
add: addMethod,
|
487 |
+
remove: removeMethod,
|
488 |
+
|
489 |
+
_default: function(e) {
|
490 |
+
var event, data;
|
491 |
+
|
492 |
+
// If no move events were bound to any ancestors of this
|
493 |
+
// target, high tail it out of here.
|
494 |
+
if (!e._handled()) { return; }
|
495 |
+
|
496 |
+
function update(time) {
|
497 |
+
updateEvent(event, data.touch, data.timeStamp);
|
498 |
+
trigger(e.target, event);
|
499 |
+
}
|
500 |
+
|
501 |
+
event = {
|
502 |
+
target: e.target,
|
503 |
+
startX: e.startX,
|
504 |
+
startY: e.startY,
|
505 |
+
pageX: e.pageX,
|
506 |
+
pageY: e.pageY,
|
507 |
+
distX: e.distX,
|
508 |
+
distY: e.distY,
|
509 |
+
deltaX: e.deltaX,
|
510 |
+
deltaY: e.deltaY,
|
511 |
+
velocityX: e.velocityX,
|
512 |
+
velocityY: e.velocityY,
|
513 |
+
timeStamp: e.timeStamp,
|
514 |
+
identifier: e.identifier,
|
515 |
+
targetTouches: e.targetTouches,
|
516 |
+
finger: e.finger
|
517 |
+
};
|
518 |
+
|
519 |
+
data = {
|
520 |
+
event: event,
|
521 |
+
timer: new Timer(update),
|
522 |
+
touch: undefined,
|
523 |
+
timeStamp: undefined
|
524 |
+
};
|
525 |
+
|
526 |
+
if (e.identifier === undefined) {
|
527 |
+
// We're dealing with a mouse
|
528 |
+
// Stop clicks from propagating during a move
|
529 |
+
add(e.target, 'click', returnFalse);
|
530 |
+
add(document, mouseevents.move, activeMousemove, data);
|
531 |
+
add(document, mouseevents.end, activeMouseend, data);
|
532 |
+
}
|
533 |
+
else {
|
534 |
+
// We're dealing with a touch. Stop touchmove doing
|
535 |
+
// anything defaulty.
|
536 |
+
e._preventTouchmoveDefault();
|
537 |
+
add(document, touchevents.move + '.' + e.identifier, activeTouchmove, data);
|
538 |
+
add(document, touchevents.end + '.' + e.identifier, activeTouchend, data);
|
539 |
+
}
|
540 |
+
}
|
541 |
+
};
|
542 |
+
|
543 |
+
jQuery.event.special.move = {
|
544 |
+
setup: function() {
|
545 |
+
// Bind a noop to movestart. Why? It's the movestart
|
546 |
+
// setup that decides whether other move events are fired.
|
547 |
+
add(this, 'movestart.move', jQuery.noop);
|
548 |
+
},
|
549 |
+
|
550 |
+
teardown: function() {
|
551 |
+
remove(this, 'movestart.move', jQuery.noop);
|
552 |
+
}
|
553 |
+
};
|
554 |
+
|
555 |
+
jQuery.event.special.moveend = {
|
556 |
+
setup: function() {
|
557 |
+
// Bind a noop to movestart. Why? It's the movestart
|
558 |
+
// setup that decides whether other move events are fired.
|
559 |
+
add(this, 'movestart.moveend', jQuery.noop);
|
560 |
+
},
|
561 |
+
|
562 |
+
teardown: function() {
|
563 |
+
remove(this, 'movestart.moveend', jQuery.noop);
|
564 |
+
}
|
565 |
+
};
|
566 |
+
|
567 |
+
add(document, 'mousedown.move', mousedown);
|
568 |
+
add(document, 'touchstart.move', touchstart);
|
569 |
+
|
570 |
+
// Make jQuery copy touch event properties over to the jQuery event
|
571 |
+
// object, if they are not already listed. But only do the ones we
|
572 |
+
// really need. IE7/8 do not have Array#indexOf(), but nor do they
|
573 |
+
// have touch events, so let's assume we can ignore them.
|
574 |
+
if (typeof Array.prototype.indexOf === 'function') {
|
575 |
+
(function(jQuery, undefined){
|
576 |
+
var props = ["changedTouches", "targetTouches"],
|
577 |
+
l = props.length;
|
578 |
+
|
579 |
+
while (l--) {
|
580 |
+
if (jQuery.event.props.indexOf(props[l]) === -1) {
|
581 |
+
jQuery.event.props.push(props[l]);
|
582 |
+
}
|
583 |
+
}
|
584 |
+
})(jQuery);
|
585 |
+
};
|
586 |
+
});
|
libs/twentytwenty/jquery.twentytwenty.js
ADDED
@@ -0,0 +1,105 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function($){
|
2 |
+
|
3 |
+
$.fn.twentytwenty = function(options) {
|
4 |
+
var options = $.extend({default_offset_pct: 0.5, orientation: 'horizontal'}, options);
|
5 |
+
return this.each(function() {
|
6 |
+
|
7 |
+
var sliderPct = options.default_offset_pct;
|
8 |
+
var container = $(this);
|
9 |
+
var sliderOrientation = options.orientation;
|
10 |
+
var beforeDirection = (sliderOrientation === 'vertical') ? 'down' : 'left';
|
11 |
+
var afterDirection = (sliderOrientation === 'vertical') ? 'up' : 'right';
|
12 |
+
|
13 |
+
|
14 |
+
container.wrap("<div class='twentytwenty-wrapper twentytwenty-" + sliderOrientation + "'></div>");
|
15 |
+
container.append("<div class='twentytwenty-overlay'></div>");
|
16 |
+
var beforeImg = container.find("img:first");
|
17 |
+
var afterImg = container.find("img:last");
|
18 |
+
container.append("<div class='twentytwenty-handle'></div>");
|
19 |
+
var slider = container.find(".twentytwenty-handle");
|
20 |
+
slider.append("<span class='twentytwenty-" + beforeDirection + "-arrow'></span>");
|
21 |
+
slider.append("<span class='twentytwenty-" + afterDirection + "-arrow'></span>");
|
22 |
+
container.addClass("twentytwenty-container");
|
23 |
+
beforeImg.addClass("twentytwenty-before");
|
24 |
+
afterImg.addClass("twentytwenty-after");
|
25 |
+
|
26 |
+
var overlay = container.find(".twentytwenty-overlay");
|
27 |
+
overlay.append("<div class='twentytwenty-before-label'></div>");
|
28 |
+
overlay.append("<div class='twentytwenty-after-label'></div>");
|
29 |
+
|
30 |
+
var calcOffset = function(dimensionPct) {
|
31 |
+
var w = beforeImg.width();
|
32 |
+
var h = beforeImg.height();
|
33 |
+
return {
|
34 |
+
w: w+"px",
|
35 |
+
h: h+"px",
|
36 |
+
cw: (dimensionPct*w)+"px",
|
37 |
+
ch: (dimensionPct*h)+"px"
|
38 |
+
};
|
39 |
+
};
|
40 |
+
|
41 |
+
var adjustContainer = function(offset) {
|
42 |
+
if (sliderOrientation === 'vertical') {
|
43 |
+
beforeImg.css("clip", "rect(0,"+offset.w+","+offset.ch+",0)");
|
44 |
+
}
|
45 |
+
else {
|
46 |
+
beforeImg.css("clip", "rect(0,"+offset.cw+","+offset.h+",0)");
|
47 |
+
}
|
48 |
+
container.css("height", offset.h);
|
49 |
+
};
|
50 |
+
|
51 |
+
var adjustSlider = function(pct) {
|
52 |
+
var offset = calcOffset(pct);
|
53 |
+
slider.css((sliderOrientation==="vertical") ? "top" : "left", (sliderOrientation==="vertical") ? offset.ch : offset.cw);
|
54 |
+
adjustContainer(offset);
|
55 |
+
}
|
56 |
+
|
57 |
+
$(window).on("resize.twentytwenty", function(e) {
|
58 |
+
adjustSlider(sliderPct);
|
59 |
+
});
|
60 |
+
|
61 |
+
var offsetX = 0;
|
62 |
+
var offsetY = 0;
|
63 |
+
var imgWidth = 0;
|
64 |
+
var imgHeight = 0;
|
65 |
+
|
66 |
+
slider.on("movestart", function(e) {
|
67 |
+
if (((e.distX > e.distY && e.distX < -e.distY) || (e.distX < e.distY && e.distX > -e.distY)) && sliderOrientation !== 'vertical') {
|
68 |
+
e.preventDefault();
|
69 |
+
}
|
70 |
+
else if (((e.distX < e.distY && e.distX < -e.distY) || (e.distX > e.distY && e.distX > -e.distY)) && sliderOrientation === 'vertical') {
|
71 |
+
e.preventDefault();
|
72 |
+
}
|
73 |
+
container.addClass("active");
|
74 |
+
offsetX = container.offset().left;
|
75 |
+
offsetY = container.offset().top;
|
76 |
+
imgWidth = beforeImg.width();
|
77 |
+
imgHeight = beforeImg.height();
|
78 |
+
});
|
79 |
+
|
80 |
+
slider.on("moveend", function(e) {
|
81 |
+
container.removeClass("active");
|
82 |
+
});
|
83 |
+
|
84 |
+
slider.on("move", function(e) {
|
85 |
+
if (container.hasClass("active")) {
|
86 |
+
sliderPct = (sliderOrientation === 'vertical') ? (e.pageY-offsetY)/imgHeight : (e.pageX-offsetX)/imgWidth;
|
87 |
+
if (sliderPct < 0) {
|
88 |
+
sliderPct = 0;
|
89 |
+
}
|
90 |
+
if (sliderPct > 1) {
|
91 |
+
sliderPct = 1;
|
92 |
+
}
|
93 |
+
adjustSlider(sliderPct);
|
94 |
+
}
|
95 |
+
});
|
96 |
+
|
97 |
+
container.find("img").on("mousedown", function(event) {
|
98 |
+
event.preventDefault();
|
99 |
+
});
|
100 |
+
|
101 |
+
$(window).trigger("resize.twentytwenty");
|
102 |
+
});
|
103 |
+
};
|
104 |
+
|
105 |
+
})(jQuery);
|
press-elements-admin.php
CHANGED
@@ -56,7 +56,7 @@ class Press_Elements_Admin {
|
|
56 |
$capability = apply_filters( 'press_elements_menu_display_capability', 'manage_options' );
|
57 |
|
58 |
// About
|
59 |
-
|
60 |
esc_html__( 'Press Elements - Widgets for Elementor', 'press-elements' ),
|
61 |
esc_html__( 'Press Elements', 'press-elements' ),
|
62 |
$capability,
|
@@ -79,10 +79,12 @@ class Press_Elements_Admin {
|
|
79 |
$tab = isset( $_GET['tab'] ) ? sanitize_text_field( $_GET['tab'] ) : 'about';
|
80 |
?>
|
81 |
<h2 class="nav-tab-wrapper">
|
82 |
-
<a class="nav-tab <?php echo ( 'about' === $tab ) ? 'nav-tab-active' : ''; ?>" href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'press-elements', 'tab' => 'about' ), '
|
83 |
-
<a class="nav-tab <?php echo ( 'getting-started' === $tab ) ? 'nav-tab-active' : ''; ?>" href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'press-elements', 'tab' => 'getting-started' ), '
|
84 |
-
<a class="nav-tab <?php echo ( 'changelog' === $tab ) ? 'nav-tab-active' : ''; ?>" href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'press-elements', 'tab' => 'changelog' ), '
|
85 |
-
<a class="nav-tab" href="<?php echo press_elements_freemius()->get_upgrade_url(); ?>"><?php esc_html_e( '
|
|
|
|
|
86 |
</h2>
|
87 |
<?php
|
88 |
}
|
@@ -160,7 +162,7 @@ class Press_Elements_Admin {
|
|
160 |
|
161 |
<p class="about-text"><?php esc_html_e( 'When using page builders, you need to create all the page element for each page over and over again. Currently you can\'t design single page templates and apply the design on the post. When you use the template system you need to manually change titles and images for each post/page.', 'press-elements' ); ?></p>
|
162 |
|
163 |
-
<p class="about-text"><?php esc_html_e( 'With Press Elements you can create custom designs with post elements and save them as template. When you apply the template on other posts, it will
|
164 |
|
165 |
<p class="about-text"><?php esc_html_e( 'You don\'t need to hire developers to generate custom page templates - with Press Elements you can do it using a simple drag & drop interface! Now you can design different templates for different blog posts, pages and other Post Types. When creating new posts, load your predefined templates from your template library.', 'press-elements' ); ?></p>
|
166 |
|
@@ -186,10 +188,18 @@ class Press_Elements_Admin {
|
|
186 |
<li><?php esc_html_e( 'Post Custom Field (Pro)', 'press-elements' ); ?></li>
|
187 |
<li><?php esc_html_e( 'Post Comments', 'press-elements' ); ?></li>
|
188 |
</ol>
|
|
|
|
|
|
|
|
|
|
|
|
|
189 |
<p style="text-decoration: underline;"><?php esc_html_e( 'Integrations:', 'press-elements' ); ?></p>
|
190 |
<ol>
|
191 |
<li><?php esc_html_e( 'Advanced Custom Fields (Pro)', 'press-elements' ); ?></li>
|
192 |
<li><?php esc_html_e( 'Gravatar (Pro)', 'press-elements' ); ?></li>
|
|
|
|
|
193 |
</ol>
|
194 |
|
195 |
<h3><?php esc_html_e( 'Coming Soon', 'press-elements' ); ?></h3>
|
@@ -205,10 +215,9 @@ class Press_Elements_Admin {
|
|
205 |
<li><?php esc_html_e( 'Comments List', 'press-elements' ); ?></li>
|
206 |
<li><?php esc_html_e( 'Comments Pagination', 'press-elements' ); ?></li>
|
207 |
</ol>
|
208 |
-
<p style="text-decoration: underline;"><?php esc_html_e( '
|
209 |
<ol>
|
210 |
-
<li><?php esc_html_e( '
|
211 |
-
<li><?php esc_html_e( 'Pinterest (Pro)', 'press-elements' ); ?></li>
|
212 |
</ol>
|
213 |
|
214 |
</div>
|
@@ -294,6 +303,24 @@ class Press_Elements_Admin {
|
|
294 |
<figcaption><?php esc_html_e( 'Display Gravatars based on an email address.', 'press-elements' ); ?></figcaption>
|
295 |
</figure>
|
296 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
297 |
</div>
|
298 |
|
299 |
</div>
|
56 |
$capability = apply_filters( 'press_elements_menu_display_capability', 'manage_options' );
|
57 |
|
58 |
// About
|
59 |
+
add_options_page(
|
60 |
esc_html__( 'Press Elements - Widgets for Elementor', 'press-elements' ),
|
61 |
esc_html__( 'Press Elements', 'press-elements' ),
|
62 |
$capability,
|
79 |
$tab = isset( $_GET['tab'] ) ? sanitize_text_field( $_GET['tab'] ) : 'about';
|
80 |
?>
|
81 |
<h2 class="nav-tab-wrapper">
|
82 |
+
<a class="nav-tab <?php echo ( 'about' === $tab ) ? 'nav-tab-active' : ''; ?>" href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'press-elements', 'tab' => 'about' ), 'options-general.php' ) ) ); ?>"><?php esc_html_e( 'About', 'press-elements' ); ?></a>
|
83 |
+
<a class="nav-tab <?php echo ( 'getting-started' === $tab ) ? 'nav-tab-active' : ''; ?>" href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'press-elements', 'tab' => 'getting-started' ), 'options-general.php' ) ) ); ?>"><?php esc_html_e( 'Getting Started', 'press-elements' ); ?></a>
|
84 |
+
<a class="nav-tab <?php echo ( 'changelog' === $tab ) ? 'nav-tab-active' : ''; ?>" href="<?php echo esc_url( admin_url( add_query_arg( array( 'page' => 'press-elements', 'tab' => 'changelog' ), 'options-general.php' ) ) ); ?>"><?php esc_html_e( 'Changelog', 'press-elements' ); ?></a>
|
85 |
+
<a class="nav-tab" href="<?php echo press_elements_freemius()->get_upgrade_url(); ?>"><?php esc_html_e( 'Pricing', 'press-elements' ); ?></a>
|
86 |
+
<a class="nav-tab" href="<?php echo press_elements_freemius()->get_account_url(); ?>"><?php esc_html_e( 'Account', 'press-elements' ); ?></a>
|
87 |
+
<a class="nav-tab" href="https://wordpress.org/support/plugin/press-elements" target="_blank"><?php esc_html_e( 'Support Forum', 'press-elements' ); ?></a>
|
88 |
</h2>
|
89 |
<?php
|
90 |
}
|
162 |
|
163 |
<p class="about-text"><?php esc_html_e( 'When using page builders, you need to create all the page element for each page over and over again. Currently you can\'t design single page templates and apply the design on the post. When you use the template system you need to manually change titles and images for each post/page.', 'press-elements' ); ?></p>
|
164 |
|
165 |
+
<p class="about-text"><?php esc_html_e( 'With Press Elements you can create custom designs with post elements and save them as template. When you apply the template on other posts, it will inherit the data from the new post. No more manual updates!', 'press-elements' ); ?></p>
|
166 |
|
167 |
<p class="about-text"><?php esc_html_e( 'You don\'t need to hire developers to generate custom page templates - with Press Elements you can do it using a simple drag & drop interface! Now you can design different templates for different blog posts, pages and other Post Types. When creating new posts, load your predefined templates from your template library.', 'press-elements' ); ?></p>
|
168 |
|
188 |
<li><?php esc_html_e( 'Post Custom Field (Pro)', 'press-elements' ); ?></li>
|
189 |
<li><?php esc_html_e( 'Post Comments', 'press-elements' ); ?></li>
|
190 |
</ol>
|
191 |
+
<p style="text-decoration: underline;"><?php esc_html_e( 'Effects:', 'press-elements' ); ?></p>
|
192 |
+
<ol>
|
193 |
+
<li><?php esc_html_e( 'Image Accordion (Pro)', 'press-elements' ); ?></li>
|
194 |
+
<li><?php esc_html_e( 'Before After Effect (Pro)', 'press-elements' ); ?></li>
|
195 |
+
<li><?php esc_html_e( 'Notes (Pro)', 'press-elements' ); ?></li>
|
196 |
+
</ol>
|
197 |
<p style="text-decoration: underline;"><?php esc_html_e( 'Integrations:', 'press-elements' ); ?></p>
|
198 |
<ol>
|
199 |
<li><?php esc_html_e( 'Advanced Custom Fields (Pro)', 'press-elements' ); ?></li>
|
200 |
<li><?php esc_html_e( 'Gravatar (Pro)', 'press-elements' ); ?></li>
|
201 |
+
<li><?php esc_html_e( 'Flickr (Pro)', 'press-elements' ); ?></li>
|
202 |
+
<li><?php esc_html_e( 'Pinterest (Pro)', 'press-elements' ); ?></li>
|
203 |
</ol>
|
204 |
|
205 |
<h3><?php esc_html_e( 'Coming Soon', 'press-elements' ); ?></h3>
|
215 |
<li><?php esc_html_e( 'Comments List', 'press-elements' ); ?></li>
|
216 |
<li><?php esc_html_e( 'Comments Pagination', 'press-elements' ); ?></li>
|
217 |
</ol>
|
218 |
+
<p style="text-decoration: underline;"><?php esc_html_e( 'Effects:', 'press-elements' ); ?></p>
|
219 |
<ol>
|
220 |
+
<li><?php esc_html_e( 'Typing Effect (Pro)', 'press-elements' ); ?></li>
|
|
|
221 |
</ol>
|
222 |
|
223 |
</div>
|
303 |
<figcaption><?php esc_html_e( 'Display Gravatars based on an email address.', 'press-elements' ); ?></figcaption>
|
304 |
</figure>
|
305 |
|
306 |
+
<br>
|
307 |
+
|
308 |
+
<figure>
|
309 |
+
<a href="<?php echo esc_url( plugins_url( 'screenshot-10.png', __FILE__ ) ); ?>" target="_blank">
|
310 |
+
<img src="<?php echo esc_url( plugins_url( 'screenshot-10.png', __FILE__ ) ); ?>" alt="<?php esc_attr_e( 'Display Flickr photostream based on Flickr User ID.', 'press-elements' ); ?>">
|
311 |
+
</a>
|
312 |
+
<figcaption><?php esc_html_e( 'Display Flickr photostream based on Flickr User ID.', 'press-elements' ); ?></figcaption>
|
313 |
+
</figure>
|
314 |
+
|
315 |
+
<br>
|
316 |
+
|
317 |
+
<figure>
|
318 |
+
<a href="<?php echo esc_url( plugins_url( 'screenshot-11.png', __FILE__ ) ); ?>" target="_blank">
|
319 |
+
<img src="<?php echo esc_url( plugins_url( 'screenshot-11.png', __FILE__ ) ); ?>" alt="<?php esc_attr_e( 'Display Pinterest pins based on Pinterest username.', 'press-elements' ); ?>">
|
320 |
+
</a>
|
321 |
+
<figcaption><?php esc_html_e( 'Display Pinterest pins based on Pinterest username.', 'press-elements' ); ?></figcaption>
|
322 |
+
</figure>
|
323 |
+
|
324 |
</div>
|
325 |
|
326 |
</div>
|
press-elements-freemius.php
CHANGED
@@ -17,7 +17,7 @@ function press_elements_freemius()
|
|
17 |
|
18 |
if ( !isset( $press_elements_freemius ) ) {
|
19 |
// Include Freemius SDK.
|
20 |
-
require_once dirname( __FILE__ ) . '/freemius/start.php';
|
21 |
$press_elements_freemius = fs_dynamic_init( array(
|
22 |
'id' => '761',
|
23 |
'slug' => 'press-elements',
|
@@ -29,8 +29,10 @@ function press_elements_freemius()
|
|
29 |
'menu' => array(
|
30 |
'slug' => 'press-elements',
|
31 |
'contact' => false,
|
|
|
|
|
32 |
'parent' => array(
|
33 |
-
'slug' => '
|
34 |
),
|
35 |
),
|
36 |
'is_live' => true,
|
@@ -40,7 +42,21 @@ function press_elements_freemius()
|
|
40 |
return $press_elements_freemius;
|
41 |
}
|
42 |
|
43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
press_elements_freemius();
|
|
|
|
|
45 |
// Signal that SDK was initiated.
|
46 |
do_action( 'press_elements_freemius_loaded' );
|
17 |
|
18 |
if ( !isset( $press_elements_freemius ) ) {
|
19 |
// Include Freemius SDK.
|
20 |
+
require_once dirname( __FILE__ ) . '/libs/freemius/start.php';
|
21 |
$press_elements_freemius = fs_dynamic_init( array(
|
22 |
'id' => '761',
|
23 |
'slug' => 'press-elements',
|
29 |
'menu' => array(
|
30 |
'slug' => 'press-elements',
|
31 |
'contact' => false,
|
32 |
+
'support' => false,
|
33 |
+
'pricing' => false,
|
34 |
'parent' => array(
|
35 |
+
'slug' => 'options-general.php',
|
36 |
),
|
37 |
),
|
38 |
'is_live' => true,
|
42 |
return $press_elements_freemius;
|
43 |
}
|
44 |
|
45 |
+
/**
|
46 |
+
* Add header title
|
47 |
+
*
|
48 |
+
* Insets H1 title to the freemius templates.
|
49 |
+
*
|
50 |
+
* @since 1.6.0
|
51 |
+
*/
|
52 |
+
function press_elements_freemius_header( $html )
|
53 |
+
{
|
54 |
+
return sprintf( '<h1>%1$s</h1>%2$s', esc_html_e( 'Press Elements - Widgets for Elementor', 'press-elements' ), $html );
|
55 |
+
}
|
56 |
+
|
57 |
+
// Init Freemius
|
58 |
press_elements_freemius();
|
59 |
+
press_elements_freemius()->add_filter( 'templates/account.php', 'press_elements_freemius_header' );
|
60 |
+
press_elements_freemius()->add_filter( 'templates/billing.php', 'press_elements_freemius_header' );
|
61 |
// Signal that SDK was initiated.
|
62 |
do_action( 'press_elements_freemius_loaded' );
|
press-elements-plugin.php
CHANGED
@@ -1,162 +1,179 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
use
|
6 |
-
use
|
7 |
-
use
|
8 |
-
|
9 |
-
use
|
10 |
-
use
|
11 |
-
use
|
12 |
-
use
|
13 |
-
use
|
14 |
-
use
|
15 |
-
use
|
16 |
-
use
|
17 |
-
|
18 |
-
use
|
19 |
-
use
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
/**
|
29 |
* Main Plugin Class
|
30 |
*
|
31 |
* Register new elementor widget.
|
32 |
*
|
33 |
* @since 1.0.0
|
34 |
-
*/
|
35 |
-
class Press_Elements_Plugin
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
new
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace PressElements;
|
4 |
+
|
5 |
+
use PressElements\Widgets\Press_Elements_Site_Title ;
|
6 |
+
use PressElements\Widgets\Press_Elements_Site_Description ;
|
7 |
+
use PressElements\Widgets\Press_Elements_Site_Logo ;
|
8 |
+
use PressElements\Widgets\Press_Elements_Site_Counters ;
|
9 |
+
use PressElements\Widgets\Press_Elements_Post_Title ;
|
10 |
+
use PressElements\Widgets\Press_Elements_Post_Excerpt ;
|
11 |
+
use PressElements\Widgets\Press_Elements_Post_Author ;
|
12 |
+
use PressElements\Widgets\Press_Elements_Post_Date ;
|
13 |
+
use PressElements\Widgets\Press_Elements_Post_Terms ;
|
14 |
+
use PressElements\Widgets\Press_Elements_Post_Featured_Image ;
|
15 |
+
use PressElements\Widgets\Press_Elements_Post_Custom_Field ;
|
16 |
+
use PressElements\Widgets\Press_Elements_Post_Comments ;
|
17 |
+
use PressElements\Widgets\Press_Elements_Image_Accordion ;
|
18 |
+
use PressElements\Widgets\Press_Elements_Before_After_Effect ;
|
19 |
+
use PressElements\Widgets\Press_Elements_Notes ;
|
20 |
+
use PressElements\Widgets\Press_Elements_Advanced_Custom_Fields ;
|
21 |
+
use PressElements\Widgets\Press_Elements_Gravatar ;
|
22 |
+
use PressElements\Widgets\Press_Elements_Flickr ;
|
23 |
+
use PressElements\Widgets\Press_Elements_Pinterest ;
|
24 |
+
// Exit if accessed directly
|
25 |
+
if ( !defined( 'ABSPATH' ) ) {
|
26 |
+
die;
|
27 |
+
}
|
28 |
/**
|
29 |
* Main Plugin Class
|
30 |
*
|
31 |
* Register new elementor widget.
|
32 |
*
|
33 |
* @since 1.0.0
|
34 |
+
*/
|
35 |
+
class Press_Elements_Plugin
|
36 |
+
{
|
37 |
+
/**
|
38 |
+
* Constructor
|
39 |
+
*
|
40 |
+
* @since 1.0.0
|
41 |
+
*
|
42 |
+
* @access public
|
43 |
+
*/
|
44 |
+
public function __construct()
|
45 |
+
{
|
46 |
+
$this->add_actions();
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Add Actions
|
51 |
+
*
|
52 |
+
* @since 1.0.0
|
53 |
+
*
|
54 |
+
* @access private
|
55 |
+
*/
|
56 |
+
private function add_actions()
|
57 |
+
{
|
58 |
+
add_action( 'elementor/init', array( $this, 'add_elementor_category' ) );
|
59 |
+
add_action( 'elementor/frontend/after_register_scripts', array( $this, 'register_widget_script' ) );
|
60 |
+
add_action( 'elementor/widgets/widgets_registered', array( $this, 'on_widgets_registered' ) );
|
61 |
+
}
|
62 |
+
|
63 |
+
/**
|
64 |
+
* On Widgets Registered
|
65 |
+
*
|
66 |
+
* @since 1.0.0
|
67 |
+
*
|
68 |
+
* @access public
|
69 |
+
*/
|
70 |
+
public function add_elementor_category()
|
71 |
+
{
|
72 |
+
\Elementor\Plugin::instance()->elements_manager->add_category( 'press-elements-site-elements', array(
|
73 |
+
'title' => __( 'Site Elements', 'press-elements' ),
|
74 |
+
), 1 );
|
75 |
+
\Elementor\Plugin::instance()->elements_manager->add_category( 'press-elements-post-elements', array(
|
76 |
+
'title' => __( 'Post Elements', 'press-elements' ),
|
77 |
+
), 2 );
|
78 |
+
\Elementor\Plugin::instance()->elements_manager->add_category( 'press-elements-effects', array(
|
79 |
+
'title' => __( 'Press Elements Pro Effects', 'press-elements' ),
|
80 |
+
), 3 );
|
81 |
+
\Elementor\Plugin::instance()->elements_manager->add_category( 'press-elements-integrations', array(
|
82 |
+
'title' => __( 'Press Elements Pro Integrations', 'press-elements' ),
|
83 |
+
), 4 );
|
84 |
+
}
|
85 |
+
|
86 |
+
/**
|
87 |
+
* Register Widget Script
|
88 |
+
*
|
89 |
+
* @since 1.6.0
|
90 |
+
*
|
91 |
+
* @access public
|
92 |
+
*/
|
93 |
+
public function register_widget_script()
|
94 |
+
{
|
95 |
+
}
|
96 |
+
|
97 |
+
/**
|
98 |
+
* On Widgets Registered
|
99 |
+
*
|
100 |
+
* @since 1.0.0
|
101 |
+
*
|
102 |
+
* @access public
|
103 |
+
*/
|
104 |
+
public function on_widgets_registered()
|
105 |
+
{
|
106 |
+
$this->includes();
|
107 |
+
$this->register_widget();
|
108 |
+
}
|
109 |
+
|
110 |
+
/**
|
111 |
+
* Includes
|
112 |
+
*
|
113 |
+
* @since 1.0.0
|
114 |
+
*
|
115 |
+
* @access private
|
116 |
+
*/
|
117 |
+
private function includes()
|
118 |
+
{
|
119 |
+
// Site Elements
|
120 |
+
require_once __DIR__ . '/widgets/site-title.php';
|
121 |
+
require_once __DIR__ . '/widgets/site-description.php';
|
122 |
+
require_once __DIR__ . '/widgets/site-logo.php';
|
123 |
+
require_once __DIR__ . '/widgets/site-counters.php';
|
124 |
+
// Post Elements
|
125 |
+
require_once __DIR__ . '/widgets/post-title.php';
|
126 |
+
require_once __DIR__ . '/widgets/post-excerpt.php';
|
127 |
+
require_once __DIR__ . '/widgets/post-date.php';
|
128 |
+
require_once __DIR__ . '/widgets/post-author.php';
|
129 |
+
require_once __DIR__ . '/widgets/post-terms.php';
|
130 |
+
require_once __DIR__ . '/widgets/post-featured-image.php';
|
131 |
+
require_once __DIR__ . '/widgets/post-custom-field.php';
|
132 |
+
require_once __DIR__ . '/widgets/post-comments.php';
|
133 |
+
// Effects
|
134 |
+
require_once __DIR__ . '/widgets/image-accordion.php';
|
135 |
+
require_once __DIR__ . '/widgets/before-after-effect.php';
|
136 |
+
require_once __DIR__ . '/widgets/notes.php';
|
137 |
+
// Integrations
|
138 |
+
require_once __DIR__ . '/widgets/advanced-custom-fields.php';
|
139 |
+
require_once __DIR__ . '/widgets/gravatar.php';
|
140 |
+
require_once __DIR__ . '/widgets/flickr.php';
|
141 |
+
require_once __DIR__ . '/widgets/pinterest.php';
|
142 |
+
}
|
143 |
+
|
144 |
+
/**
|
145 |
+
* Register Widget
|
146 |
+
*
|
147 |
+
* @since 1.0.0
|
148 |
+
*
|
149 |
+
* @access private
|
150 |
+
*/
|
151 |
+
private function register_widget()
|
152 |
+
{
|
153 |
+
// Site Elements
|
154 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Site_Title() );
|
155 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Site_Description() );
|
156 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Site_Logo() );
|
157 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Site_Counters() );
|
158 |
+
// Post Elements
|
159 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Title() );
|
160 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Excerpt() );
|
161 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Date() );
|
162 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Author() );
|
163 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Terms() );
|
164 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Featured_Image() );
|
165 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Custom_Field() );
|
166 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Post_Comments() );
|
167 |
+
// Effects
|
168 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Image_Accordion() );
|
169 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Before_After_Effect() );
|
170 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Notes() );
|
171 |
+
// Integrations
|
172 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Advanced_Custom_Fields() );
|
173 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Gravatar() );
|
174 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Flickr() );
|
175 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new Press_Elements_Pinterest() );
|
176 |
+
}
|
177 |
+
|
178 |
+
}
|
179 |
+
new Press_Elements_Plugin();
|
press-elements.php
CHANGED
@@ -3,9 +3,9 @@
|
|
3 |
* Plugin Name: Press Elements - Widgets for Elementor
|
4 |
* Description: Easy-to-use widgets that help you display and design your content using Elementor page builder.
|
5 |
* Plugin URI: https://wordpress.org/plugins/press-elements/
|
6 |
-
* Version: 1.
|
7 |
-
* Author:
|
8 |
-
* Author URI: https://
|
9 |
* Text Domain: press-elements
|
10 |
*/
|
11 |
|
@@ -18,15 +18,13 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
18 |
|
19 |
|
20 |
|
21 |
-
//
|
22 |
-
|
23 |
-
|
24 |
|
25 |
|
26 |
-
// Load Freemius SDK
|
27 |
-
require( __DIR__ . '/press-elements-freemius.php' );
|
28 |
-
|
29 |
|
|
|
|
|
30 |
|
31 |
/**
|
32 |
* Load Press Elements
|
@@ -62,8 +60,13 @@ if ( ! function_exists( 'press_elements_load' ) ) {
|
|
62 |
}
|
63 |
add_action( 'plugins_loaded', 'press_elements_load' );
|
64 |
|
|
|
|
|
65 |
|
66 |
|
|
|
|
|
|
|
67 |
/**
|
68 |
* Admin notice
|
69 |
*
|
@@ -72,17 +75,23 @@ if ( ! function_exists( 'press_elements_load' ) ) {
|
|
72 |
* @since 1.1.0
|
73 |
*/
|
74 |
function press_elements_admin_notice_missing_main_plugin() {
|
|
|
75 |
$message = sprintf(
|
76 |
/* translators: 1: Press Elements 2: Elementor */
|
77 |
esc_html__( '"%1$s" requires "%2$s" to be installed and activated.', 'press-elements' ),
|
78 |
'<strong>' . esc_html__( 'Press Elements', 'press-elements' ) . '</strong>',
|
79 |
'<strong>' . esc_html__( 'Elementor', 'press-elements' ) . '</strong>'
|
80 |
);
|
81 |
-
|
82 |
printf( '<div class="notice notice-warning is-dismissible"><p>%1$s</p></div>', $message );
|
|
|
83 |
}
|
84 |
|
|
|
|
|
|
|
85 |
|
|
|
|
|
86 |
|
87 |
/**
|
88 |
* Admin notice
|
@@ -92,6 +101,7 @@ if ( ! function_exists( 'press_elements_load' ) ) {
|
|
92 |
* @since 1.1.0
|
93 |
*/
|
94 |
function press_elements_admin_notice_main_plugin_required_version() {
|
|
|
95 |
$elementor_version_required = '1.3.4';
|
96 |
$message = sprintf(
|
97 |
/* translators: 1: Press Elements 2: Elementor 3: Required Elementor version */
|
@@ -100,10 +110,8 @@ if ( ! function_exists( 'press_elements_load' ) ) {
|
|
100 |
'<strong>' . esc_html__( 'Elementor', 'press-elements' ) . '</strong>',
|
101 |
$elementor_version_required
|
102 |
);
|
103 |
-
|
104 |
printf( '<div class="notice notice-warning is-dismissible"><p>%1$s</p></div>', $message );
|
105 |
-
}
|
106 |
-
|
107 |
|
|
|
108 |
|
109 |
}
|
3 |
* Plugin Name: Press Elements - Widgets for Elementor
|
4 |
* Description: Easy-to-use widgets that help you display and design your content using Elementor page builder.
|
5 |
* Plugin URI: https://wordpress.org/plugins/press-elements/
|
6 |
+
* Version: 1.6.0
|
7 |
+
* Author: Press Elements
|
8 |
+
* Author URI: https://press-elements.com/
|
9 |
* Text Domain: press-elements
|
10 |
*/
|
11 |
|
18 |
|
19 |
|
20 |
|
21 |
+
// Load Freemius SDK
|
22 |
+
require( __DIR__ . '/press-elements-freemius.php' );
|
|
|
23 |
|
24 |
|
|
|
|
|
|
|
25 |
|
26 |
+
// Make sure the same methods/classes aren’t loaded twice for free/premium versions
|
27 |
+
if ( ! function_exists( 'press_elements_load' ) ) {
|
28 |
|
29 |
/**
|
30 |
* Load Press Elements
|
60 |
}
|
61 |
add_action( 'plugins_loaded', 'press_elements_load' );
|
62 |
|
63 |
+
}
|
64 |
+
|
65 |
|
66 |
|
67 |
+
// Make sure the same methods/classes aren’t loaded twice for free/premium versions
|
68 |
+
if ( ! function_exists( 'press_elements_admin_notice_missing_main_plugin' ) ) {
|
69 |
+
|
70 |
/**
|
71 |
* Admin notice
|
72 |
*
|
75 |
* @since 1.1.0
|
76 |
*/
|
77 |
function press_elements_admin_notice_missing_main_plugin() {
|
78 |
+
|
79 |
$message = sprintf(
|
80 |
/* translators: 1: Press Elements 2: Elementor */
|
81 |
esc_html__( '"%1$s" requires "%2$s" to be installed and activated.', 'press-elements' ),
|
82 |
'<strong>' . esc_html__( 'Press Elements', 'press-elements' ) . '</strong>',
|
83 |
'<strong>' . esc_html__( 'Elementor', 'press-elements' ) . '</strong>'
|
84 |
);
|
|
|
85 |
printf( '<div class="notice notice-warning is-dismissible"><p>%1$s</p></div>', $message );
|
86 |
+
|
87 |
}
|
88 |
|
89 |
+
}
|
90 |
+
|
91 |
+
|
92 |
|
93 |
+
// Make sure the same methods/classes aren’t loaded twice for free/premium versions
|
94 |
+
if ( ! function_exists( 'press_elements_admin_notice_main_plugin_required_version' ) ) {
|
95 |
|
96 |
/**
|
97 |
* Admin notice
|
101 |
* @since 1.1.0
|
102 |
*/
|
103 |
function press_elements_admin_notice_main_plugin_required_version() {
|
104 |
+
|
105 |
$elementor_version_required = '1.3.4';
|
106 |
$message = sprintf(
|
107 |
/* translators: 1: Press Elements 2: Elementor 3: Required Elementor version */
|
110 |
'<strong>' . esc_html__( 'Elementor', 'press-elements' ) . '</strong>',
|
111 |
$elementor_version_required
|
112 |
);
|
|
|
113 |
printf( '<div class="notice notice-warning is-dismissible"><p>%1$s</p></div>', $message );
|
|
|
|
|
114 |
|
115 |
+
}
|
116 |
|
117 |
}
|
readme.txt
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
=== Press Elements - Widgets for Elementor ===
|
2 |
Contributors: ramiy
|
3 |
-
Tags: elementor, press elements, elements, widgets, page builder
|
4 |
Requires at least: 4.7
|
5 |
Tested up to: 4.7
|
6 |
-
Stable tag: 1.
|
7 |
License: GPLv3
|
8 |
License URI: https://opensource.org/licenses/GPL-3.0
|
9 |
|
@@ -11,7 +11,7 @@ Easy-to-use widgets that help you display and design your content using Elemento
|
|
11 |
|
12 |
== Description ==
|
13 |
|
14 |
-
|
15 |
|
16 |
= WordPress Elements =
|
17 |
|
@@ -35,17 +35,15 @@ For example, you can bulk edit several posts from your sites dashboard to change
|
|
35 |
|
36 |
When using page builders, you need to create all the page element for each page over and over again. Currently you can't design single page templates and apply the design on the post. When you use the template system you need to manually change titles and images for each post/page.
|
37 |
|
38 |
-
With Press Elements you can create custom designs with post elements and save them as template. When you apply the template on other posts, it will
|
39 |
|
40 |
You don't need to hire developers to generate custom page templates - with Press Elements you can do it using a simple drag & drop interface! Now you can design different templates for different blog posts, pages and other Post Types. When creating new posts, load your predefined templates from your template library.
|
41 |
|
42 |
With Press Elements you can use Elementor widgets to display and design your post elements! Just like developers use theme-functions to generate themes. How cool is that?!
|
43 |
|
44 |
-
https://www.youtube.com/watch?v=yGzefuK7ngs
|
45 |
-
|
46 |
= Included Widgets =
|
47 |
|
48 |
-
Press Elements comes with
|
49 |
|
50 |
Site Elements:
|
51 |
|
@@ -61,32 +59,22 @@ Post Elements:
|
|
61 |
- **Post Date** - Publish date or last modified date.
|
62 |
- **Post Author** - The post author information.
|
63 |
- **Post Terms** - The taxonomies assigned to the post.
|
64 |
-
- **Post Featured Image
|
65 |
- **Post Custom Field (Pro)** - Extra information saved as WordPress meta-data.
|
66 |
- **Post Comments** - The default Comments Template included in the theme.
|
67 |
|
68 |
-
|
69 |
|
70 |
-
- **
|
71 |
-
- **
|
72 |
-
|
73 |
-
= Coming Soon =
|
74 |
-
|
75 |
-
Site Elements:
|
76 |
-
|
77 |
-
- **Login Form**
|
78 |
-
- **Search Form**
|
79 |
-
|
80 |
-
Comments Elements:
|
81 |
-
|
82 |
-
- **Comments Form**
|
83 |
-
- **Comments List**
|
84 |
-
- **Comments Pagination**
|
85 |
|
86 |
Integrations:
|
87 |
|
88 |
-
- **
|
89 |
-
- **
|
|
|
|
|
90 |
|
91 |
== Screenshots ==
|
92 |
1. Post edit screen with WordPress elements.
|
@@ -98,12 +86,17 @@ Integrations:
|
|
98 |
7. Site counters for Post Types, Taxonomies, Comments and Users.
|
99 |
8. Custom fields as text fields and images, and linking to other custom fields.
|
100 |
9. Display Gravatars based on an email address.
|
|
|
|
|
|
|
|
|
|
|
101 |
|
102 |
== Frequently Asked Questions ==
|
103 |
|
104 |
= Is Press Elements compatible with any Theme? =
|
105 |
|
106 |
-
It sure is! Press Elements uses standard theme functions.
|
107 |
|
108 |
= Is Press Elements compatible with Custom Post Types? =
|
109 |
|
@@ -113,7 +106,7 @@ Yes. It works on any post type as long as it supports the relevant post element.
|
|
113 |
|
114 |
Currently the plugin displays post elements on "single" pages. But in the future, it will support "archive" page too.
|
115 |
|
116 |
-
= I am a theme developer, how can it help me?
|
117 |
|
118 |
As a theme developer you probably use theme-functions in your workflow. Press Elements turns those functions to widgets. Replacing code with a visual builder to reduce your development time.
|
119 |
|
@@ -157,6 +150,33 @@ For more advanced uses, please contact us in our [wp.org support forum](https://
|
|
157 |
|
158 |
== Changelog ==
|
159 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
= 1.4.0 =
|
161 |
|
162 |
**General**
|
1 |
=== Press Elements - Widgets for Elementor ===
|
2 |
Contributors: ramiy
|
3 |
+
Tags: elementor, press elements, elements, widgets, page builder, builder, visual editor,
|
4 |
Requires at least: 4.7
|
5 |
Tested up to: 4.7
|
6 |
+
Stable tag: 1.6.0
|
7 |
License: GPLv3
|
8 |
License URI: https://opensource.org/licenses/GPL-3.0
|
9 |
|
11 |
|
12 |
== Description ==
|
13 |
|
14 |
+
[Press Elements](https://press-elements.com/) combines the simplicity of [Elementor](https://wordpress.org/plugins/elementor/) with the efficiency of the built-in WordPress theme components.
|
15 |
|
16 |
= WordPress Elements =
|
17 |
|
35 |
|
36 |
When using page builders, you need to create all the page element for each page over and over again. Currently you can't design single page templates and apply the design on the post. When you use the template system you need to manually change titles and images for each post/page.
|
37 |
|
38 |
+
With Press Elements you can create custom designs with post elements and save them as template. When you apply the template on other posts, it will inherit the data from the new post. No more manual updates!
|
39 |
|
40 |
You don't need to hire developers to generate custom page templates - with Press Elements you can do it using a simple drag & drop interface! Now you can design different templates for different blog posts, pages and other Post Types. When creating new posts, load your predefined templates from your template library.
|
41 |
|
42 |
With Press Elements you can use Elementor widgets to display and design your post elements! Just like developers use theme-functions to generate themes. How cool is that?!
|
43 |
|
|
|
|
|
44 |
= Included Widgets =
|
45 |
|
46 |
+
Press Elements comes with 19 useful Elementor widgets, 11 of them are free of charge!
|
47 |
|
48 |
Site Elements:
|
49 |
|
59 |
- **Post Date** - Publish date or last modified date.
|
60 |
- **Post Author** - The post author information.
|
61 |
- **Post Terms** - The taxonomies assigned to the post.
|
62 |
+
- **Post Featured Image** - An image assigned to the post.
|
63 |
- **Post Custom Field (Pro)** - Extra information saved as WordPress meta-data.
|
64 |
- **Post Comments** - The default Comments Template included in the theme.
|
65 |
|
66 |
+
Effects:
|
67 |
|
68 |
+
- **Image Accordion (Pro)** - Display images in a beautiful accordion effect.
|
69 |
+
- **Before After Effect (Pro)** - Visual differences between two images.
|
70 |
+
- **Notes (Pro)** - Create sticky notes effect.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
|
72 |
Integrations:
|
73 |
|
74 |
+
- **Advanced Custom Fields (Pro)** - Fields added by [Advanced Custom Fields](https://wordpress.org/plugins/advanced-custom-fields/) plugin.
|
75 |
+
- **Gravatar (Pro)** - Display single [Gravatars](https://gravatar.com/) based on an email address.
|
76 |
+
- **Flickr (Pro)** - Display Flickr photostream based on Flickr User ID.
|
77 |
+
- **Pinterest (Pro)** - Display Pinterest pins based on Pinterest username.
|
78 |
|
79 |
== Screenshots ==
|
80 |
1. Post edit screen with WordPress elements.
|
86 |
7. Site counters for Post Types, Taxonomies, Comments and Users.
|
87 |
8. Custom fields as text fields and images, and linking to other custom fields.
|
88 |
9. Display Gravatars based on an email address.
|
89 |
+
10. Display Flickr photostream based on Flickr User ID.
|
90 |
+
11. Display Pinterest pins based on Pinterest username.
|
91 |
+
12. Display images in a beautiful accordion effect.
|
92 |
+
13. Display visual differences between two images.
|
93 |
+
14. Display sticky notes effect.
|
94 |
|
95 |
== Frequently Asked Questions ==
|
96 |
|
97 |
= Is Press Elements compatible with any Theme? =
|
98 |
|
99 |
+
It sure is! Press Elements uses standard theme functions. The plugin will work on any WordPress theme!
|
100 |
|
101 |
= Is Press Elements compatible with Custom Post Types? =
|
102 |
|
106 |
|
107 |
Currently the plugin displays post elements on "single" pages. But in the future, it will support "archive" page too.
|
108 |
|
109 |
+
= I am a theme developer, how can it help me? =
|
110 |
|
111 |
As a theme developer you probably use theme-functions in your workflow. Press Elements turns those functions to widgets. Replacing code with a visual builder to reduce your development time.
|
112 |
|
150 |
|
151 |
== Changelog ==
|
152 |
|
153 |
+
= 1.6.0 =
|
154 |
+
|
155 |
+
**General**
|
156 |
+
|
157 |
+
* Release "Post Featured Image" as a free widget!!
|
158 |
+
|
159 |
+
**New Widgets**
|
160 |
+
|
161 |
+
* Image Accordion (Pro)
|
162 |
+
* Before After Effect (Pro)
|
163 |
+
* Notes (Pro)
|
164 |
+
|
165 |
+
= 1.5.0 =
|
166 |
+
|
167 |
+
**General**
|
168 |
+
|
169 |
+
* Move "Press Elements" menu from "Appearance" to "Settings".
|
170 |
+
* Fix the issue with single quotes characters in "Post Title" and "Post Excerpt" widgets.
|
171 |
+
* Escape the URL returned by the "Link to" controller in all the widgets.
|
172 |
+
* Add warnings in widgets that dependent on external plugins like ACF.
|
173 |
+
* Enhance "Advanced Custom Fields" widget to display fields saved as arrays.
|
174 |
+
|
175 |
+
**New Widgets**
|
176 |
+
|
177 |
+
* Flickr (Pro)
|
178 |
+
* Pinterest (Pro)
|
179 |
+
|
180 |
= 1.4.0 =
|
181 |
|
182 |
**General**
|
screenshot-10.png
ADDED
Binary file
|
screenshot-11.png
ADDED
Binary file
|
screenshot-12.png
ADDED
Binary file
|
screenshot-13.png
ADDED
Binary file
|
screenshot-14.png
ADDED
Binary file
|
screenshot-7.png
CHANGED
Binary file
|
screenshot-8.png
CHANGED
Binary file
|
screenshot-9.png
CHANGED
Binary file
|
widgets/advanced-custom-fields.php
CHANGED
@@ -44,32 +44,34 @@ class Press_Elements_Advanced_Custom_Fields extends Widget_Base
|
|
44 |
|
45 |
protected function _register_controls()
|
46 |
{
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
'
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
</div>',
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
|
|
|
|
|
|
63 |
'label' => __( 'Advanced Custom Fields', 'press-elements' ),
|
64 |
-
'tab' => Controls_Manager::TAB_STYLE,
|
65 |
) );
|
66 |
-
$this->add_control( '
|
67 |
'type' => Controls_Manager::RAW_HTML,
|
68 |
'raw' => '<div class="elementor-panel-nerd-box">
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
</div>',
|
74 |
'separator' => 'none',
|
75 |
) );
|
@@ -78,6 +80,10 @@ class Press_Elements_Advanced_Custom_Fields extends Widget_Base
|
|
78 |
|
79 |
protected function render()
|
80 |
{
|
|
|
|
|
|
|
|
|
81 |
}
|
82 |
|
83 |
protected function _content_template()
|
44 |
|
45 |
protected function _register_controls()
|
46 |
{
|
47 |
+
|
48 |
+
if ( !is_plugin_active( 'advanced-custom-fields/acf.php' ) && !class_exists( 'acf' ) ) {
|
49 |
+
$this->start_controls_section( 'section_missing_plugin', array(
|
50 |
+
'label' => __( 'Advanced Custom Fields', 'press-elements' ),
|
51 |
+
) );
|
52 |
+
$this->add_control( 'missing_plugin', array(
|
53 |
+
'type' => Controls_Manager::RAW_HTML,
|
54 |
+
'raw' => '<div class="elementor-panel-nerd-box">
|
55 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
56 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Pugin is Missing', 'press-elements' ) . '</div>
|
57 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature requires "%s" plugin to be installed and active.', 'press-elements' ), '<strong>' . __( 'Advanced Custom Fields', 'press-elements' ) . '</strong>' ) . '</div>
|
58 |
</div>',
|
59 |
+
'separator' => 'none',
|
60 |
+
) );
|
61 |
+
$this->end_controls_section();
|
62 |
+
return;
|
63 |
+
}
|
64 |
+
|
65 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
66 |
'label' => __( 'Advanced Custom Fields', 'press-elements' ),
|
|
|
67 |
) );
|
68 |
+
$this->add_control( 'pro_feature', array(
|
69 |
'type' => Controls_Manager::RAW_HTML,
|
70 |
'raw' => '<div class="elementor-panel-nerd-box">
|
71 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
72 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
73 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
74 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
75 |
</div>',
|
76 |
'separator' => 'none',
|
77 |
) );
|
80 |
|
81 |
protected function render()
|
82 |
{
|
83 |
+
// Check if "acf" is active
|
84 |
+
if ( !is_plugin_active( 'advanced-custom-fields/acf.php' ) && !class_exists( 'acf' ) ) {
|
85 |
+
return;
|
86 |
+
}
|
87 |
}
|
88 |
|
89 |
protected function _content_template()
|
widgets/before-after-effect.php
ADDED
@@ -0,0 +1,77 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace PressElements\Widgets;
|
4 |
+
|
5 |
+
use Elementor\Widget_Base ;
|
6 |
+
use Elementor\Controls_Manager ;
|
7 |
+
use Elementor\Utils ;
|
8 |
+
use Elementor\Scheme_Color ;
|
9 |
+
use Elementor\Scheme_Typography ;
|
10 |
+
use Elementor\Group_Control_Typography ;
|
11 |
+
use Elementor\Group_Control_Box_Shadow ;
|
12 |
+
use Elementor\Group_Control_Border ;
|
13 |
+
// Exit if accessed directly
|
14 |
+
if ( !defined( 'ABSPATH' ) ) {
|
15 |
+
die;
|
16 |
+
}
|
17 |
+
/**
|
18 |
+
* Before After Effect
|
19 |
+
*
|
20 |
+
* Elementor widget for before after effect.
|
21 |
+
*
|
22 |
+
* @since 1.6.0
|
23 |
+
*/
|
24 |
+
class Press_Elements_Before_After_Effect extends Widget_Base
|
25 |
+
{
|
26 |
+
public function get_name()
|
27 |
+
{
|
28 |
+
return 'before-after-effect';
|
29 |
+
}
|
30 |
+
|
31 |
+
public function get_title()
|
32 |
+
{
|
33 |
+
return __( 'Before After Effect', 'press-elements' );
|
34 |
+
}
|
35 |
+
|
36 |
+
public function get_icon()
|
37 |
+
{
|
38 |
+
return 'fa fa-columns';
|
39 |
+
}
|
40 |
+
|
41 |
+
public function get_categories()
|
42 |
+
{
|
43 |
+
return array( 'press-elements-effects' );
|
44 |
+
}
|
45 |
+
|
46 |
+
public function get_script_depends()
|
47 |
+
{
|
48 |
+
return array( 'before-after-effect' );
|
49 |
+
}
|
50 |
+
|
51 |
+
protected function _register_controls()
|
52 |
+
{
|
53 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
54 |
+
'label' => __( 'Before After Effect', 'press-elements' ),
|
55 |
+
) );
|
56 |
+
$this->add_control( 'pro_feature', array(
|
57 |
+
'type' => Controls_Manager::RAW_HTML,
|
58 |
+
'raw' => '<div class="elementor-panel-nerd-box">
|
59 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
60 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
61 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
62 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
63 |
+
</div>',
|
64 |
+
'separator' => 'none',
|
65 |
+
) );
|
66 |
+
$this->end_controls_section();
|
67 |
+
}
|
68 |
+
|
69 |
+
protected function render()
|
70 |
+
{
|
71 |
+
}
|
72 |
+
|
73 |
+
protected function _content_template()
|
74 |
+
{
|
75 |
+
}
|
76 |
+
|
77 |
+
}
|
widgets/flickr.php
ADDED
@@ -0,0 +1,66 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace PressElements\Widgets;
|
4 |
+
|
5 |
+
use Elementor\Widget_Base ;
|
6 |
+
use Elementor\Controls_Manager ;
|
7 |
+
// Exit if accessed directly
|
8 |
+
if ( !defined( 'ABSPATH' ) ) {
|
9 |
+
die;
|
10 |
+
}
|
11 |
+
/**
|
12 |
+
* Press Elements Flickr
|
13 |
+
*
|
14 |
+
* Flickr element for elementor.
|
15 |
+
*
|
16 |
+
* @since 1.5.0
|
17 |
+
*/
|
18 |
+
class Press_Elements_Flickr extends Widget_Base
|
19 |
+
{
|
20 |
+
public function get_name()
|
21 |
+
{
|
22 |
+
return 'flickr';
|
23 |
+
}
|
24 |
+
|
25 |
+
public function get_title()
|
26 |
+
{
|
27 |
+
return __( 'Flickr', 'press-elements' );
|
28 |
+
}
|
29 |
+
|
30 |
+
public function get_icon()
|
31 |
+
{
|
32 |
+
return 'fa fa-flickr';
|
33 |
+
}
|
34 |
+
|
35 |
+
public function get_categories()
|
36 |
+
{
|
37 |
+
return array( 'press-elements-integrations' );
|
38 |
+
}
|
39 |
+
|
40 |
+
protected function _register_controls()
|
41 |
+
{
|
42 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
43 |
+
'label' => __( 'Flickr', 'press-elements' ),
|
44 |
+
) );
|
45 |
+
$this->add_control( 'pro_feature', array(
|
46 |
+
'type' => Controls_Manager::RAW_HTML,
|
47 |
+
'raw' => '<div class="elementor-panel-nerd-box">
|
48 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
49 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
50 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
51 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
52 |
+
</div>',
|
53 |
+
'separator' => 'none',
|
54 |
+
) );
|
55 |
+
$this->end_controls_section();
|
56 |
+
}
|
57 |
+
|
58 |
+
protected function render()
|
59 |
+
{
|
60 |
+
}
|
61 |
+
|
62 |
+
protected function _content_template()
|
63 |
+
{
|
64 |
+
}
|
65 |
+
|
66 |
+
}
|
widgets/gravatar.php
CHANGED
@@ -41,31 +41,16 @@ class Press_Elements_Gravatar extends Widget_Base
|
|
41 |
|
42 |
protected function _register_controls()
|
43 |
{
|
44 |
-
$this->start_controls_section( '
|
45 |
'label' => __( 'Gravatar', 'press-elements' ),
|
46 |
) );
|
47 |
-
$this->add_control( '
|
48 |
'type' => Controls_Manager::RAW_HTML,
|
49 |
'raw' => '<div class="elementor-panel-nerd-box">
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
</div>',
|
55 |
-
'separator' => 'none',
|
56 |
-
) );
|
57 |
-
$this->end_controls_section();
|
58 |
-
$this->start_controls_section( 'section_style', array(
|
59 |
-
'label' => __( 'Gravatar', 'press-elements' ),
|
60 |
-
'tab' => Controls_Manager::TAB_STYLE,
|
61 |
-
) );
|
62 |
-
$this->add_control( 'pro_style', array(
|
63 |
-
'type' => Controls_Manager::RAW_HTML,
|
64 |
-
'raw' => '<div class="elementor-panel-nerd-box">
|
65 |
-
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
66 |
-
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
67 |
-
<div class="elementor-panel-nerd-box-message">' . __( 'This feature is available only for Press Elements Pro.', 'press-elements' ) . '</div>
|
68 |
-
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
69 |
</div>',
|
70 |
'separator' => 'none',
|
71 |
) );
|
41 |
|
42 |
protected function _register_controls()
|
43 |
{
|
44 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
45 |
'label' => __( 'Gravatar', 'press-elements' ),
|
46 |
) );
|
47 |
+
$this->add_control( 'pro_feature', array(
|
48 |
'type' => Controls_Manager::RAW_HTML,
|
49 |
'raw' => '<div class="elementor-panel-nerd-box">
|
50 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
51 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
52 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
53 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
</div>',
|
55 |
'separator' => 'none',
|
56 |
) );
|
widgets/image-accordion.php
ADDED
@@ -0,0 +1,73 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace PressElements\Widgets;
|
4 |
+
|
5 |
+
use Elementor\Widget_Base ;
|
6 |
+
use Elementor\Controls_Manager ;
|
7 |
+
use Elementor\Utils ;
|
8 |
+
use Elementor\Group_Control_Image_Size ;
|
9 |
+
use Elementor\Group_Control_Border ;
|
10 |
+
use Elementor\Group_Control_Box_Shadow ;
|
11 |
+
use Elementor\Scheme_Color ;
|
12 |
+
use Elementor\Scheme_Typography ;
|
13 |
+
use Elementor\Group_Control_Typography ;
|
14 |
+
// Exit if accessed directly
|
15 |
+
if ( !defined( 'ABSPATH' ) ) {
|
16 |
+
die;
|
17 |
+
}
|
18 |
+
/**
|
19 |
+
* Image Accordion Effect
|
20 |
+
*
|
21 |
+
* Elementor widget for image accordion.
|
22 |
+
*
|
23 |
+
* @since 1.6.0
|
24 |
+
*/
|
25 |
+
class Press_Elements_Image_Accordion extends Widget_Base
|
26 |
+
{
|
27 |
+
public function get_name()
|
28 |
+
{
|
29 |
+
return 'image-accordion';
|
30 |
+
}
|
31 |
+
|
32 |
+
public function get_title()
|
33 |
+
{
|
34 |
+
return __( 'Image Accordion', 'press-elements' );
|
35 |
+
}
|
36 |
+
|
37 |
+
public function get_icon()
|
38 |
+
{
|
39 |
+
return 'eicon-slider-push';
|
40 |
+
}
|
41 |
+
|
42 |
+
public function get_categories()
|
43 |
+
{
|
44 |
+
return array( 'press-elements-effects' );
|
45 |
+
}
|
46 |
+
|
47 |
+
protected function _register_controls()
|
48 |
+
{
|
49 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
50 |
+
'label' => __( 'Image Accordion', 'press-elements' ),
|
51 |
+
) );
|
52 |
+
$this->add_control( 'pro_feature', array(
|
53 |
+
'type' => Controls_Manager::RAW_HTML,
|
54 |
+
'raw' => '<div class="elementor-panel-nerd-box">
|
55 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
56 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
57 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
58 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
59 |
+
</div>',
|
60 |
+
'separator' => 'none',
|
61 |
+
) );
|
62 |
+
$this->end_controls_section();
|
63 |
+
}
|
64 |
+
|
65 |
+
protected function render()
|
66 |
+
{
|
67 |
+
}
|
68 |
+
|
69 |
+
protected function _content_template()
|
70 |
+
{
|
71 |
+
}
|
72 |
+
|
73 |
+
}
|
widgets/notes.php
ADDED
@@ -0,0 +1,70 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace PressElements\Widgets;
|
4 |
+
|
5 |
+
use Elementor\Widget_Base ;
|
6 |
+
use Elementor\Controls_Manager ;
|
7 |
+
use Elementor\Scheme_Color ;
|
8 |
+
use Elementor\Scheme_Typography ;
|
9 |
+
use Elementor\Group_Control_Typography ;
|
10 |
+
use Elementor\Group_Control_Box_Shadow ;
|
11 |
+
// Exit if accessed directly
|
12 |
+
if ( !defined( 'ABSPATH' ) ) {
|
13 |
+
die;
|
14 |
+
}
|
15 |
+
/**
|
16 |
+
* Notes
|
17 |
+
*
|
18 |
+
* Elementor widget for notes.
|
19 |
+
*
|
20 |
+
* @since 1.6.0
|
21 |
+
*/
|
22 |
+
class Press_Elements_Notes extends Widget_Base
|
23 |
+
{
|
24 |
+
public function get_name()
|
25 |
+
{
|
26 |
+
return 'notes';
|
27 |
+
}
|
28 |
+
|
29 |
+
public function get_title()
|
30 |
+
{
|
31 |
+
return __( 'Notes', 'press-elements' );
|
32 |
+
}
|
33 |
+
|
34 |
+
public function get_icon()
|
35 |
+
{
|
36 |
+
return 'fa fa-thumb-tack';
|
37 |
+
}
|
38 |
+
|
39 |
+
public function get_categories()
|
40 |
+
{
|
41 |
+
return array( 'press-elements-effects' );
|
42 |
+
}
|
43 |
+
|
44 |
+
protected function _register_controls()
|
45 |
+
{
|
46 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
47 |
+
'label' => __( 'Notes', 'press-elements' ),
|
48 |
+
) );
|
49 |
+
$this->add_control( 'pro_feature', array(
|
50 |
+
'type' => Controls_Manager::RAW_HTML,
|
51 |
+
'raw' => '<div class="elementor-panel-nerd-box">
|
52 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
53 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
54 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
55 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
56 |
+
</div>',
|
57 |
+
'separator' => 'none',
|
58 |
+
) );
|
59 |
+
$this->end_controls_section();
|
60 |
+
}
|
61 |
+
|
62 |
+
protected function render()
|
63 |
+
{
|
64 |
+
}
|
65 |
+
|
66 |
+
protected function _content_template()
|
67 |
+
{
|
68 |
+
}
|
69 |
+
|
70 |
+
}
|
widgets/pinterest.php
ADDED
@@ -0,0 +1,105 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace PressElements\Widgets;
|
4 |
+
|
5 |
+
use Elementor\Widget_Base ;
|
6 |
+
use Elementor\Controls_Manager ;
|
7 |
+
// Exit if accessed directly
|
8 |
+
if ( !defined( 'ABSPATH' ) ) {
|
9 |
+
die;
|
10 |
+
}
|
11 |
+
/**
|
12 |
+
* Press Elements Pinterest
|
13 |
+
*
|
14 |
+
* Pinterest element for elementor.
|
15 |
+
*
|
16 |
+
* @since 1.5.0
|
17 |
+
*/
|
18 |
+
class Press_Elements_Pinterest extends Widget_Base
|
19 |
+
{
|
20 |
+
public function get_name()
|
21 |
+
{
|
22 |
+
return 'pinterest';
|
23 |
+
}
|
24 |
+
|
25 |
+
public function get_title()
|
26 |
+
{
|
27 |
+
return __( 'Pinterest', 'press-elements' );
|
28 |
+
}
|
29 |
+
|
30 |
+
public function get_icon()
|
31 |
+
{
|
32 |
+
return 'fa fa-pinterest';
|
33 |
+
}
|
34 |
+
|
35 |
+
public function get_categories()
|
36 |
+
{
|
37 |
+
return array( 'press-elements-integrations' );
|
38 |
+
}
|
39 |
+
|
40 |
+
protected function _register_controls()
|
41 |
+
{
|
42 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
43 |
+
'label' => __( 'Pinterest', 'press-elements' ),
|
44 |
+
) );
|
45 |
+
$this->add_control( 'pro_feature', array(
|
46 |
+
'type' => Controls_Manager::RAW_HTML,
|
47 |
+
'raw' => '<div class="elementor-panel-nerd-box">
|
48 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
49 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
50 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
51 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
52 |
+
</div>',
|
53 |
+
'separator' => 'none',
|
54 |
+
) );
|
55 |
+
$this->end_controls_section();
|
56 |
+
}
|
57 |
+
|
58 |
+
protected function render()
|
59 |
+
{
|
60 |
+
}
|
61 |
+
|
62 |
+
protected function _content_template()
|
63 |
+
{
|
64 |
+
}
|
65 |
+
|
66 |
+
public function get_pins( $username, $total_pins )
|
67 |
+
{
|
68 |
+
// Set RSS cache lifetime in seconds
|
69 |
+
$cache_lifetime = 900;
|
70 |
+
add_filter( 'wp_feed_cache_transient_lifetime', create_function( '$a', 'return ' . $cache_lifetime . ';' ) );
|
71 |
+
// Get the RSS feed
|
72 |
+
$url = sprintf( 'https://pinterest.com/%s/feed.rss', $username );
|
73 |
+
$rss = fetch_feed( $url );
|
74 |
+
if ( is_wp_error( $rss ) ) {
|
75 |
+
return null;
|
76 |
+
}
|
77 |
+
$maxitems = $rss->get_item_quantity( $total_pins );
|
78 |
+
$rss_items = $rss->get_items( 0, $maxitems );
|
79 |
+
if ( is_null( $rss_items ) ) {
|
80 |
+
return null;
|
81 |
+
}
|
82 |
+
// Build patterns to search/replace in the image urls. Pattern to replace for the images.
|
83 |
+
$search = array( '_b.jpg' );
|
84 |
+
$replace = array( '_t.jpg' );
|
85 |
+
// Make urls protocol relative
|
86 |
+
array_push( $search, 'https://' );
|
87 |
+
array_push( $replace, '//' );
|
88 |
+
$pins = array();
|
89 |
+
foreach ( $rss_items as $item ) {
|
90 |
+
$title = $item->get_title();
|
91 |
+
$description = $item->get_description();
|
92 |
+
$url = $item->get_permalink();
|
93 |
+
if ( preg_match_all( '/<img src="([^"]*)".*>/i', $description, $matches ) ) {
|
94 |
+
$image = str_replace( $search, $replace, $matches[1][0] );
|
95 |
+
}
|
96 |
+
array_push( $pins, array(
|
97 |
+
'title' => $title,
|
98 |
+
'image' => $image,
|
99 |
+
'url' => $url,
|
100 |
+
) );
|
101 |
+
}
|
102 |
+
return $pins;
|
103 |
+
}
|
104 |
+
|
105 |
+
}
|
widgets/post-author.php
CHANGED
@@ -132,6 +132,7 @@ class Press_Elements_Post_Author extends Widget_Base {
|
|
132 |
'default' => 'none',
|
133 |
'options' => [
|
134 |
'none' => __( 'None', 'press-elements' ),
|
|
|
135 |
'post' => sprintf(
|
136 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
137 |
__( '%s URL', 'press-elements' ),
|
@@ -340,18 +341,22 @@ class Press_Elements_Post_Author extends Widget_Base {
|
|
340 |
switch ( $settings['link_to'] ) {
|
341 |
case 'custom' :
|
342 |
if ( ! empty( $settings['link']['url'] ) ) {
|
343 |
-
$link = $settings['link']['url'];
|
344 |
} else {
|
345 |
$link = false;
|
346 |
}
|
347 |
break;
|
348 |
|
|
|
|
|
|
|
|
|
349 |
case 'post' :
|
350 |
-
$link = get_the_permalink();
|
351 |
break;
|
352 |
|
353 |
-
case '
|
354 |
-
$link =
|
355 |
break;
|
356 |
|
357 |
case 'none' :
|
@@ -390,11 +395,14 @@ class Press_Elements_Post_Author extends Widget_Base {
|
|
390 |
case 'custom':
|
391 |
link_url = settings.link.url;
|
392 |
break;
|
|
|
|
|
|
|
393 |
case 'post':
|
394 |
-
link_url = '<?php echo get_the_permalink(); ?>';
|
395 |
break;
|
396 |
-
case '
|
397 |
-
link_url = '<?php echo
|
398 |
break;
|
399 |
case 'none':
|
400 |
default:
|
132 |
'default' => 'none',
|
133 |
'options' => [
|
134 |
'none' => __( 'None', 'press-elements' ),
|
135 |
+
'home' => __( 'Home URL', 'press-elements' ),
|
136 |
'post' => sprintf(
|
137 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
138 |
__( '%s URL', 'press-elements' ),
|
341 |
switch ( $settings['link_to'] ) {
|
342 |
case 'custom' :
|
343 |
if ( ! empty( $settings['link']['url'] ) ) {
|
344 |
+
$link = esc_url( $settings['link']['url'] );
|
345 |
} else {
|
346 |
$link = false;
|
347 |
}
|
348 |
break;
|
349 |
|
350 |
+
case 'author' :
|
351 |
+
$link = esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) );
|
352 |
+
break;
|
353 |
+
|
354 |
case 'post' :
|
355 |
+
$link = esc_url( get_the_permalink() );
|
356 |
break;
|
357 |
|
358 |
+
case 'home' :
|
359 |
+
$link = esc_url( get_home_url() );
|
360 |
break;
|
361 |
|
362 |
case 'none' :
|
395 |
case 'custom':
|
396 |
link_url = settings.link.url;
|
397 |
break;
|
398 |
+
case 'author':
|
399 |
+
link_url = '<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>';
|
400 |
+
break;
|
401 |
case 'post':
|
402 |
+
link_url = '<?php echo esc_url( get_the_permalink() ); ?>';
|
403 |
break;
|
404 |
+
case 'home':
|
405 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
406 |
break;
|
407 |
case 'none':
|
408 |
default:
|
widgets/post-custom-field.php
CHANGED
@@ -46,31 +46,16 @@ class Press_Elements_Post_Custom_Field extends Widget_Base
|
|
46 |
protected function _register_controls()
|
47 |
{
|
48 |
$post_type_object = get_post_type_object( get_post_type() );
|
49 |
-
$this->start_controls_section( '
|
50 |
'label' => sprintf( __( '%s Custom Field', 'press-elements' ), $post_type_object->labels->singular_name ),
|
51 |
) );
|
52 |
-
$this->add_control( '
|
53 |
'type' => Controls_Manager::RAW_HTML,
|
54 |
'raw' => '<div class="elementor-panel-nerd-box">
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
</div>',
|
60 |
-
'separator' => 'none',
|
61 |
-
) );
|
62 |
-
$this->end_controls_section();
|
63 |
-
$this->start_controls_section( 'section_style', array(
|
64 |
-
'label' => sprintf( __( '%s Custom Field', 'press-elements' ), $post_type_object->labels->singular_name ),
|
65 |
-
'tab' => Controls_Manager::TAB_STYLE,
|
66 |
-
) );
|
67 |
-
$this->add_control( 'pro_style', array(
|
68 |
-
'type' => Controls_Manager::RAW_HTML,
|
69 |
-
'raw' => '<div class="elementor-panel-nerd-box">
|
70 |
-
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
71 |
-
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
72 |
-
<div class="elementor-panel-nerd-box-message">' . __( 'This feature is available only for Press Elements Pro.', 'press-elements' ) . '</div>
|
73 |
-
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
74 |
</div>',
|
75 |
'separator' => 'none',
|
76 |
) );
|
46 |
protected function _register_controls()
|
47 |
{
|
48 |
$post_type_object = get_post_type_object( get_post_type() );
|
49 |
+
$this->start_controls_section( 'section_pro_feature', array(
|
50 |
'label' => sprintf( __( '%s Custom Field', 'press-elements' ), $post_type_object->labels->singular_name ),
|
51 |
) );
|
52 |
+
$this->add_control( 'pro_feature', array(
|
53 |
'type' => Controls_Manager::RAW_HTML,
|
54 |
'raw' => '<div class="elementor-panel-nerd-box">
|
55 |
+
<i class="elementor-panel-nerd-box-icon fa fa-lock"></i>
|
56 |
+
<div class="elementor-panel-nerd-box-title">' . __( 'Premium Feature', 'press-elements' ) . '</div>
|
57 |
+
<div class="elementor-panel-nerd-box-message">' . sprintf( __( 'This feature is only available on "%s".', 'press-elements' ), '<strong>' . __( 'Press Elements Pro', 'press-elements' ) . '</strong>' ) . '</div>
|
58 |
+
<a class="elementor-panel-nerd-box-link elementor-button elementor-button-default elementor-go-pro" href="' . press_elements_freemius()->get_upgrade_url() . '" target="_blank">' . __( 'Upgrade Now!', 'press-elements' ) . '</a>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
59 |
</div>',
|
60 |
'separator' => 'none',
|
61 |
) );
|
widgets/post-date.php
CHANGED
@@ -133,6 +133,7 @@ class Press_Elements_Post_Date extends Widget_Base {
|
|
133 |
'default' => 'none',
|
134 |
'options' => [
|
135 |
'none' => __( 'None', 'press-elements' ),
|
|
|
136 |
'post' => sprintf(
|
137 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
138 |
__( '%s URL', 'press-elements' ),
|
@@ -237,14 +238,18 @@ class Press_Elements_Post_Date extends Widget_Base {
|
|
237 |
switch ( $settings['link_to'] ) {
|
238 |
case 'custom' :
|
239 |
if ( ! empty( $settings['link']['url'] ) ) {
|
240 |
-
$link = $settings['link']['url'];
|
241 |
} else {
|
242 |
$link = false;
|
243 |
}
|
244 |
break;
|
245 |
|
246 |
case 'post' :
|
247 |
-
$link = get_the_permalink();
|
|
|
|
|
|
|
|
|
248 |
break;
|
249 |
|
250 |
case 'none' :
|
@@ -290,7 +295,10 @@ class Press_Elements_Post_Date extends Widget_Base {
|
|
290 |
link_url = settings.link.url;
|
291 |
break;
|
292 |
case 'post':
|
293 |
-
link_url = '<?php echo get_the_permalink(); ?>';
|
|
|
|
|
|
|
294 |
break;
|
295 |
case 'none':
|
296 |
default:
|
133 |
'default' => 'none',
|
134 |
'options' => [
|
135 |
'none' => __( 'None', 'press-elements' ),
|
136 |
+
'home' => __( 'Home URL', 'press-elements' ),
|
137 |
'post' => sprintf(
|
138 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
139 |
__( '%s URL', 'press-elements' ),
|
238 |
switch ( $settings['link_to'] ) {
|
239 |
case 'custom' :
|
240 |
if ( ! empty( $settings['link']['url'] ) ) {
|
241 |
+
$link = esc_url( $settings['link']['url'] );
|
242 |
} else {
|
243 |
$link = false;
|
244 |
}
|
245 |
break;
|
246 |
|
247 |
case 'post' :
|
248 |
+
$link = esc_url( get_the_permalink() );
|
249 |
+
break;
|
250 |
+
|
251 |
+
case 'home' :
|
252 |
+
$link = esc_url( get_home_url() );
|
253 |
break;
|
254 |
|
255 |
case 'none' :
|
295 |
link_url = settings.link.url;
|
296 |
break;
|
297 |
case 'post':
|
298 |
+
link_url = '<?php echo esc_url( get_the_permalink() ); ?>';
|
299 |
+
break;
|
300 |
+
case 'home':
|
301 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
302 |
break;
|
303 |
case 'none':
|
304 |
default:
|
widgets/post-excerpt.php
CHANGED
@@ -120,6 +120,7 @@ class Press_Elements_Post_Excerpt extends Widget_Base {
|
|
120 |
'default' => 'none',
|
121 |
'options' => [
|
122 |
'none' => __( 'None', 'press-elements' ),
|
|
|
123 |
'post' => sprintf(
|
124 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
125 |
__( '%s URL', 'press-elements' ),
|
@@ -208,14 +209,18 @@ class Press_Elements_Post_Excerpt extends Widget_Base {
|
|
208 |
switch ( $settings['link_to'] ) {
|
209 |
case 'custom' :
|
210 |
if ( ! empty( $settings['link']['url'] ) ) {
|
211 |
-
$link = $settings['link']['url'];
|
212 |
} else {
|
213 |
$link = false;
|
214 |
}
|
215 |
break;
|
216 |
|
217 |
case 'post' :
|
218 |
-
$link = get_the_permalink();
|
|
|
|
|
|
|
|
|
219 |
break;
|
220 |
|
221 |
case 'none' :
|
@@ -241,7 +246,7 @@ class Press_Elements_Post_Excerpt extends Widget_Base {
|
|
241 |
protected function _content_template() {
|
242 |
?>
|
243 |
<#
|
244 |
-
var excerpt =
|
245 |
|
246 |
var link_url;
|
247 |
switch( settings.link_to ) {
|
@@ -249,7 +254,10 @@ class Press_Elements_Post_Excerpt extends Widget_Base {
|
|
249 |
link_url = settings.link.url;
|
250 |
break;
|
251 |
case 'post':
|
252 |
-
link_url = '<?php echo get_the_permalink(); ?>';
|
|
|
|
|
|
|
253 |
break;
|
254 |
case 'none':
|
255 |
default:
|
120 |
'default' => 'none',
|
121 |
'options' => [
|
122 |
'none' => __( 'None', 'press-elements' ),
|
123 |
+
'home' => __( 'Home URL', 'press-elements' ),
|
124 |
'post' => sprintf(
|
125 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
126 |
__( '%s URL', 'press-elements' ),
|
209 |
switch ( $settings['link_to'] ) {
|
210 |
case 'custom' :
|
211 |
if ( ! empty( $settings['link']['url'] ) ) {
|
212 |
+
$link = esc_url( $settings['link']['url'] );
|
213 |
} else {
|
214 |
$link = false;
|
215 |
}
|
216 |
break;
|
217 |
|
218 |
case 'post' :
|
219 |
+
$link = esc_url( get_the_permalink() );
|
220 |
+
break;
|
221 |
+
|
222 |
+
case 'home' :
|
223 |
+
$link = esc_url( get_home_url() );
|
224 |
break;
|
225 |
|
226 |
case 'none' :
|
246 |
protected function _content_template() {
|
247 |
?>
|
248 |
<#
|
249 |
+
var excerpt = "<?php echo htmlspecialchars( get_the_excerpt() ); ?>";
|
250 |
|
251 |
var link_url;
|
252 |
switch( settings.link_to ) {
|
254 |
link_url = settings.link.url;
|
255 |
break;
|
256 |
case 'post':
|
257 |
+
link_url = '<?php echo esc_url( get_the_permalink() ); ?>';
|
258 |
+
break;
|
259 |
+
case 'home':
|
260 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
261 |
break;
|
262 |
case 'none':
|
263 |
default:
|
widgets/post-featured-image.php
CHANGED
@@ -1,86 +1,374 @@
|
|
1 |
<?php
|
2 |
-
|
3 |
namespace PressElements\Widgets;
|
4 |
|
5 |
-
use
|
6 |
-
use
|
7 |
-
use
|
8 |
-
use
|
9 |
-
use
|
|
|
|
|
|
|
10 |
// Exit if accessed directly
|
11 |
-
if ( !defined( 'ABSPATH' ) ) {
|
12 |
-
|
13 |
}
|
|
|
|
|
|
|
14 |
/**
|
15 |
* Press Elements Post Featured Image
|
16 |
*
|
17 |
* Single post/page featured image element for elementor.
|
18 |
*
|
19 |
* @since 1.0.0
|
|
|
20 |
*/
|
21 |
-
class Press_Elements_Post_Featured_Image extends Widget_Base
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
<?php
|
|
|
2 |
namespace PressElements\Widgets;
|
3 |
|
4 |
+
use Elementor\Widget_Base;
|
5 |
+
use Elementor\Controls_Manager;
|
6 |
+
use Elementor\Group_Control_Image_Size;
|
7 |
+
use Elementor\Group_Control_Border;
|
8 |
+
use Elementor\Group_Control_Box_Shadow;
|
9 |
+
|
10 |
+
|
11 |
+
|
12 |
// Exit if accessed directly
|
13 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
14 |
+
exit;
|
15 |
}
|
16 |
+
|
17 |
+
|
18 |
+
|
19 |
/**
|
20 |
* Press Elements Post Featured Image
|
21 |
*
|
22 |
* Single post/page featured image element for elementor.
|
23 |
*
|
24 |
* @since 1.0.0
|
25 |
+
* @since 1.6.0 Not longer a Pro widget
|
26 |
*/
|
27 |
+
class Press_Elements_Post_Featured_Image extends Widget_Base {
|
28 |
+
|
29 |
+
public function get_name() {
|
30 |
+
return 'post-featured-image';
|
31 |
+
}
|
32 |
+
|
33 |
+
public function get_title() {
|
34 |
+
$post_type_object = get_post_type_object( get_post_type() );
|
35 |
+
|
36 |
+
return sprintf(
|
37 |
+
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
38 |
+
__( '%s Featured Image', 'press-elements' ),
|
39 |
+
$post_type_object->labels->singular_name
|
40 |
+
);
|
41 |
+
}
|
42 |
+
|
43 |
+
public function get_icon() {
|
44 |
+
return 'fa fa-picture-o';
|
45 |
+
}
|
46 |
+
|
47 |
+
public function get_categories() {
|
48 |
+
return [ 'press-elements-post-elements' ];
|
49 |
+
}
|
50 |
+
|
51 |
+
protected function _register_controls() {
|
52 |
+
|
53 |
+
$post_type_object = get_post_type_object( get_post_type() );
|
54 |
+
|
55 |
+
$this->start_controls_section(
|
56 |
+
'section_content',
|
57 |
+
[
|
58 |
+
'label' => sprintf(
|
59 |
+
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
60 |
+
__( '%s Featured Image', 'press-elements' ),
|
61 |
+
$post_type_object->labels->singular_name
|
62 |
+
),
|
63 |
+
]
|
64 |
+
);
|
65 |
+
|
66 |
+
$this->add_control(
|
67 |
+
'preview',
|
68 |
+
[
|
69 |
+
'type' => Controls_Manager::RAW_HTML,
|
70 |
+
'raw' => get_the_post_thumbnail(),
|
71 |
+
'separator' => 'none',
|
72 |
+
]
|
73 |
+
);
|
74 |
+
|
75 |
+
$this->add_group_control(
|
76 |
+
Group_Control_Image_Size::get_type(),
|
77 |
+
[
|
78 |
+
'name' => 'size',
|
79 |
+
'label' => __( 'Image Size', 'press-elements' ),
|
80 |
+
'default' => 'large',
|
81 |
+
]
|
82 |
+
);
|
83 |
+
|
84 |
+
$this->add_responsive_control(
|
85 |
+
'align',
|
86 |
+
[
|
87 |
+
'label' => __( 'Alignment', 'press-elements' ),
|
88 |
+
'type' => Controls_Manager::CHOOSE,
|
89 |
+
'options' => [
|
90 |
+
'left' => [
|
91 |
+
'title' => __( 'Left', 'press-elements' ),
|
92 |
+
'icon' => 'fa fa-align-left',
|
93 |
+
],
|
94 |
+
'center' => [
|
95 |
+
'title' => __( 'Center', 'press-elements' ),
|
96 |
+
'icon' => 'fa fa-align-center',
|
97 |
+
],
|
98 |
+
'right' => [
|
99 |
+
'title' => __( 'Right', 'press-elements' ),
|
100 |
+
'icon' => 'fa fa-align-right',
|
101 |
+
],
|
102 |
+
'justify' => [
|
103 |
+
'title' => __( 'Justified', 'press-elements' ),
|
104 |
+
'icon' => 'fa fa-align-justify',
|
105 |
+
],
|
106 |
+
],
|
107 |
+
'default' => '',
|
108 |
+
'selectors' => [
|
109 |
+
'{{WRAPPER}}' => 'text-align: {{VALUE}};',
|
110 |
+
],
|
111 |
+
]
|
112 |
+
);
|
113 |
+
|
114 |
+
$this->add_control(
|
115 |
+
'link_to',
|
116 |
+
[
|
117 |
+
'label' => __( 'Link to', 'press-elements' ),
|
118 |
+
'type' => Controls_Manager::SELECT,
|
119 |
+
'default' => 'none',
|
120 |
+
'options' => [
|
121 |
+
'none' => __( 'None', 'press-elements' ),
|
122 |
+
'home' => __( 'Home URL', 'press-elements' ),
|
123 |
+
'post' => sprintf(
|
124 |
+
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
125 |
+
__( '%s URL', 'press-elements' ),
|
126 |
+
$post_type_object->labels->singular_name
|
127 |
+
),
|
128 |
+
'file' => __( 'Media File URL', 'press-elements' ),
|
129 |
+
'custom' => __( 'Custom URL', 'press-elements' ),
|
130 |
+
],
|
131 |
+
]
|
132 |
+
);
|
133 |
+
|
134 |
+
$this->add_control(
|
135 |
+
'link',
|
136 |
+
[
|
137 |
+
'label' => __( 'Link to', 'press-elements' ),
|
138 |
+
'type' => Controls_Manager::URL,
|
139 |
+
'placeholder' => __( 'http://your-link.com', 'press-elements' ),
|
140 |
+
'condition' => [
|
141 |
+
'link_to' => 'custom',
|
142 |
+
],
|
143 |
+
'show_label' => false,
|
144 |
+
]
|
145 |
+
);
|
146 |
+
|
147 |
+
$this->end_controls_section();
|
148 |
+
|
149 |
+
$this->start_controls_section(
|
150 |
+
'section_style',
|
151 |
+
[
|
152 |
+
'label' => sprintf(
|
153 |
+
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
154 |
+
__( '%s Featured Image', 'press-elements' ),
|
155 |
+
$post_type_object->labels->singular_name
|
156 |
+
),
|
157 |
+
'tab' => Controls_Manager::TAB_STYLE,
|
158 |
+
]
|
159 |
+
);
|
160 |
+
|
161 |
+
$this->add_responsive_control(
|
162 |
+
'space',
|
163 |
+
[
|
164 |
+
'label' => __( 'Size (%)', 'press-elements' ),
|
165 |
+
'type' => Controls_Manager::SLIDER,
|
166 |
+
'default' => [
|
167 |
+
'size' => 100,
|
168 |
+
'unit' => '%',
|
169 |
+
],
|
170 |
+
'size_units' => [ '%' ],
|
171 |
+
'range' => [
|
172 |
+
'%' => [
|
173 |
+
'min' => 1,
|
174 |
+
'max' => 100,
|
175 |
+
],
|
176 |
+
],
|
177 |
+
'selectors' => [
|
178 |
+
'{{WRAPPER}} .press-elements-featured-image img' => 'max-width: {{SIZE}}{{UNIT}};',
|
179 |
+
],
|
180 |
+
]
|
181 |
+
);
|
182 |
+
|
183 |
+
$this->add_responsive_control(
|
184 |
+
'opacity',
|
185 |
+
[
|
186 |
+
'label' => __( 'Opacity (%)', 'press-elements' ),
|
187 |
+
'type' => Controls_Manager::SLIDER,
|
188 |
+
'default' => [
|
189 |
+
'size' => 1,
|
190 |
+
],
|
191 |
+
'range' => [
|
192 |
+
'px' => [
|
193 |
+
'max' => 1,
|
194 |
+
'min' => 0.10,
|
195 |
+
'step' => 0.01,
|
196 |
+
],
|
197 |
+
],
|
198 |
+
'selectors' => [
|
199 |
+
'{{WRAPPER}} .press-elements-featured-image img' => 'opacity: {{SIZE}};',
|
200 |
+
],
|
201 |
+
]
|
202 |
+
);
|
203 |
+
|
204 |
+
$this->add_control(
|
205 |
+
'angle',
|
206 |
+
[
|
207 |
+
'label' => __( 'Angle (deg)', 'press-elements' ),
|
208 |
+
'type' => Controls_Manager::SLIDER,
|
209 |
+
'size_units' => [ 'deg' ],
|
210 |
+
'default' => [
|
211 |
+
'unit' => 'deg',
|
212 |
+
'size' => 0,
|
213 |
+
],
|
214 |
+
'range' => [
|
215 |
+
'deg' => [
|
216 |
+
'max' => 360,
|
217 |
+
'min' => -360,
|
218 |
+
'step' => 1,
|
219 |
+
],
|
220 |
+
],
|
221 |
+
'selectors' => [
|
222 |
+
'{{WRAPPER}} .press-elements-featured-image img' => '-webkit-transform: rotate({{SIZE}}deg); -moz-transform: rotate({{SIZE}}deg); -ms-transform: rotate({{SIZE}}deg); -o-transform: rotate({{SIZE}}deg); transform: rotate({{SIZE}}deg);',
|
223 |
+
],
|
224 |
+
]
|
225 |
+
);
|
226 |
+
|
227 |
+
$this->add_control(
|
228 |
+
'hover_animation',
|
229 |
+
[
|
230 |
+
'label' => __( 'Hover Animation', 'press-elements' ),
|
231 |
+
'type' => Controls_Manager::HOVER_ANIMATION,
|
232 |
+
]
|
233 |
+
);
|
234 |
+
|
235 |
+
$this->add_group_control(
|
236 |
+
Group_Control_Border::get_type(),
|
237 |
+
[
|
238 |
+
'name' => 'image_border',
|
239 |
+
'label' => __( 'Image Border', 'press-elements' ),
|
240 |
+
'selector' => '{{WRAPPER}} .press-elements-featured-image img',
|
241 |
+
]
|
242 |
+
);
|
243 |
+
|
244 |
+
$this->add_control(
|
245 |
+
'image_border_radius',
|
246 |
+
[
|
247 |
+
'label' => __( 'Border Radius', 'press-elements' ),
|
248 |
+
'type' => Controls_Manager::DIMENSIONS,
|
249 |
+
'size_units' => [ 'px', '%' ],
|
250 |
+
'selectors' => [
|
251 |
+
'{{WRAPPER}} .press-elements-featured-image img' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
252 |
+
],
|
253 |
+
]
|
254 |
+
);
|
255 |
+
|
256 |
+
$this->add_group_control(
|
257 |
+
Group_Control_Box_Shadow::get_type(),
|
258 |
+
[
|
259 |
+
'name' => 'image_box_shadow',
|
260 |
+
'selector' => '{{WRAPPER}} .press-elements-featured-image img',
|
261 |
+
]
|
262 |
+
);
|
263 |
+
|
264 |
+
$this->end_controls_section();
|
265 |
+
|
266 |
+
}
|
267 |
+
|
268 |
+
protected function render() {
|
269 |
+
|
270 |
+
$settings = $this->get_settings();
|
271 |
+
|
272 |
+
$image_size = $settings['size_size'];
|
273 |
+
$featured_image = get_the_post_thumbnail( null, $image_size );
|
274 |
+
|
275 |
+
if ( empty( $featured_image ) )
|
276 |
+
return;
|
277 |
+
|
278 |
+
switch ( $settings['link_to'] ) {
|
279 |
+
case 'custom' :
|
280 |
+
if ( ! empty( $settings['link']['url'] ) ) {
|
281 |
+
$link = esc_url( $settings['link']['url'] );
|
282 |
+
} else {
|
283 |
+
$link = false;
|
284 |
+
}
|
285 |
+
break;
|
286 |
+
|
287 |
+
case 'file' :
|
288 |
+
$image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), $image_size );
|
289 |
+
$link = esc_url( $image_url[0] );
|
290 |
+
break;
|
291 |
+
|
292 |
+
case 'post' :
|
293 |
+
$link = esc_url( get_the_permalink() );
|
294 |
+
break;
|
295 |
+
|
296 |
+
case 'home' :
|
297 |
+
$link = esc_url( get_home_url() );
|
298 |
+
break;
|
299 |
+
|
300 |
+
case 'none' :
|
301 |
+
default:
|
302 |
+
$link = false;
|
303 |
+
break;
|
304 |
+
}
|
305 |
+
$target = $settings['link']['is_external'] ? 'target="_blank"' : '';
|
306 |
+
|
307 |
+
$animation_class = ! empty( $settings['hover_animation'] ) ? 'elementor-animation-' . $settings['hover_animation'] : '';
|
308 |
+
|
309 |
+
$html = '<div class="press-elements-featured-image ' . $animation_class . '">';
|
310 |
+
if ( $link ) {
|
311 |
+
$html .= sprintf( '<a href="%1$s" %2$s>%3$s</a>', $link, $target, $featured_image );
|
312 |
+
} else {
|
313 |
+
$html .= $featured_image;
|
314 |
+
}
|
315 |
+
$html .= '</div>';
|
316 |
+
|
317 |
+
echo $html;
|
318 |
+
|
319 |
+
}
|
320 |
+
|
321 |
+
protected function _content_template() {
|
322 |
+
|
323 |
+
$image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'large' );
|
324 |
+
?>
|
325 |
+
<#
|
326 |
+
var featured_images = [];
|
327 |
+
<?php
|
328 |
+
$all_image_sizes = Group_Control_Image_Size::get_all_image_sizes();
|
329 |
+
foreach ( $all_image_sizes as $key => $value ) {
|
330 |
+
printf( 'featured_images[ "%1$s" ] = \'%2$s\';', $key, get_the_post_thumbnail( null, $key ) );
|
331 |
+
}
|
332 |
+
printf( 'featured_images[ "full" ] = \'%2$s\';', $key, get_the_post_thumbnail( null, 'full' ) );
|
333 |
+
?>
|
334 |
+
var featured_image = featured_images[ settings.size_size ];
|
335 |
+
|
336 |
+
var link_url;
|
337 |
+
switch( settings.link_to ) {
|
338 |
+
case 'custom':
|
339 |
+
link_url = settings.link.url;
|
340 |
+
break;
|
341 |
+
case 'file':
|
342 |
+
link_url = '<?php echo esc_url( $image_url[0] ); ?>';
|
343 |
+
break;
|
344 |
+
case 'post':
|
345 |
+
link_url = '<?php echo esc_url( get_the_permalink() ); ?>';
|
346 |
+
break;
|
347 |
+
case 'home':
|
348 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
349 |
+
break;
|
350 |
+
case 'none':
|
351 |
+
default:
|
352 |
+
link_url = false;
|
353 |
+
}
|
354 |
+
|
355 |
+
var animation_class = '';
|
356 |
+
if ( '' !== settings.hover_animation ) {
|
357 |
+
animation_class = 'elementor-animation-' + settings.hover_animation;
|
358 |
+
}
|
359 |
+
|
360 |
+
var html = '<div class="press-elements-featured-image ' + animation_class + '">';
|
361 |
+
if ( link_url ) {
|
362 |
+
html += '<a href="' + link_url + '">' + featured_image + '</a>';
|
363 |
+
} else {
|
364 |
+
html += featured_image;
|
365 |
+
}
|
366 |
+
html += '</div>';
|
367 |
+
|
368 |
+
print( html );
|
369 |
+
#>
|
370 |
+
<?php
|
371 |
+
|
372 |
+
}
|
373 |
+
|
374 |
+
}
|
widgets/post-terms.php
CHANGED
@@ -205,7 +205,7 @@ class Press_Elements_Post_Terms extends Widget_Base {
|
|
205 |
switch ( $settings['link_to'] ) {
|
206 |
case 'term' :
|
207 |
foreach ( $term_list as $term ) {
|
208 |
-
$html .= '<a href="'
|
209 |
}
|
210 |
break;
|
211 |
|
205 |
switch ( $settings['link_to'] ) {
|
206 |
case 'term' :
|
207 |
foreach ( $term_list as $term ) {
|
208 |
+
$html .= sprintf( '<a href="%1$s">%2$s</a>, ', esc_url( get_term_link( $term ) ), $term->name );
|
209 |
}
|
210 |
break;
|
211 |
|
widgets/post-title.php
CHANGED
@@ -120,6 +120,7 @@ class Press_Elements_Post_Title extends Widget_Base {
|
|
120 |
'default' => 'none',
|
121 |
'options' => [
|
122 |
'none' => __( 'None', 'press-elements' ),
|
|
|
123 |
'post' => sprintf(
|
124 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
125 |
__( '%s URL', 'press-elements' ),
|
@@ -208,14 +209,18 @@ class Press_Elements_Post_Title extends Widget_Base {
|
|
208 |
switch ( $settings['link_to'] ) {
|
209 |
case 'custom' :
|
210 |
if ( ! empty( $settings['link']['url'] ) ) {
|
211 |
-
$link = $settings['link']['url'];
|
212 |
} else {
|
213 |
$link = false;
|
214 |
}
|
215 |
break;
|
216 |
|
217 |
case 'post' :
|
218 |
-
$link = get_the_permalink();
|
|
|
|
|
|
|
|
|
219 |
break;
|
220 |
|
221 |
case 'none' :
|
@@ -241,7 +246,7 @@ class Press_Elements_Post_Title extends Widget_Base {
|
|
241 |
protected function _content_template() {
|
242 |
?>
|
243 |
<#
|
244 |
-
var title =
|
245 |
|
246 |
var link_url;
|
247 |
switch( settings.link_to ) {
|
@@ -249,7 +254,10 @@ class Press_Elements_Post_Title extends Widget_Base {
|
|
249 |
link_url = settings.link.url;
|
250 |
break;
|
251 |
case 'post':
|
252 |
-
link_url = '<?php echo get_the_permalink(); ?>';
|
|
|
|
|
|
|
253 |
break;
|
254 |
case 'none':
|
255 |
default:
|
120 |
'default' => 'none',
|
121 |
'options' => [
|
122 |
'none' => __( 'None', 'press-elements' ),
|
123 |
+
'home' => __( 'Home URL', 'press-elements' ),
|
124 |
'post' => sprintf(
|
125 |
/* translators: %s: Post type singular name (e.g. Post or Page) */
|
126 |
__( '%s URL', 'press-elements' ),
|
209 |
switch ( $settings['link_to'] ) {
|
210 |
case 'custom' :
|
211 |
if ( ! empty( $settings['link']['url'] ) ) {
|
212 |
+
$link = esc_url( $settings['link']['url'] );
|
213 |
} else {
|
214 |
$link = false;
|
215 |
}
|
216 |
break;
|
217 |
|
218 |
case 'post' :
|
219 |
+
$link = esc_url( get_the_permalink() );
|
220 |
+
break;
|
221 |
+
|
222 |
+
case 'home' :
|
223 |
+
$link = esc_url( get_home_url() );
|
224 |
break;
|
225 |
|
226 |
case 'none' :
|
246 |
protected function _content_template() {
|
247 |
?>
|
248 |
<#
|
249 |
+
var title = "<?php echo get_the_title(); ?>";
|
250 |
|
251 |
var link_url;
|
252 |
switch( settings.link_to ) {
|
254 |
link_url = settings.link.url;
|
255 |
break;
|
256 |
case 'post':
|
257 |
+
link_url = '<?php echo esc_url( get_the_permalink() ); ?>';
|
258 |
+
break;
|
259 |
+
case 'home':
|
260 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
261 |
break;
|
262 |
case 'none':
|
263 |
default:
|
widgets/site-description.php
CHANGED
@@ -188,14 +188,14 @@ class Press_Elements_Site_Description extends Widget_Base {
|
|
188 |
switch ( $settings['link_to'] ) {
|
189 |
case 'custom' :
|
190 |
if ( ! empty( $settings['link']['url'] ) ) {
|
191 |
-
$link = $settings['link']['url'];
|
192 |
} else {
|
193 |
$link = false;
|
194 |
}
|
195 |
break;
|
196 |
|
197 |
case 'home' :
|
198 |
-
$link = get_home_url();
|
199 |
break;
|
200 |
|
201 |
case 'none' :
|
@@ -229,7 +229,7 @@ class Press_Elements_Site_Description extends Widget_Base {
|
|
229 |
link_url = settings.link.url;
|
230 |
break;
|
231 |
case 'home':
|
232 |
-
link_url = '<?php echo get_home_url(); ?>';
|
233 |
break;
|
234 |
case 'none':
|
235 |
default:
|
188 |
switch ( $settings['link_to'] ) {
|
189 |
case 'custom' :
|
190 |
if ( ! empty( $settings['link']['url'] ) ) {
|
191 |
+
$link = esc_url( $settings['link']['url'] );
|
192 |
} else {
|
193 |
$link = false;
|
194 |
}
|
195 |
break;
|
196 |
|
197 |
case 'home' :
|
198 |
+
$link = esc_url( get_home_url() );
|
199 |
break;
|
200 |
|
201 |
case 'none' :
|
229 |
link_url = settings.link.url;
|
230 |
break;
|
231 |
case 'home':
|
232 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
233 |
break;
|
234 |
case 'none':
|
235 |
default:
|
widgets/site-logo.php
CHANGED
@@ -266,14 +266,14 @@ class Press_Elements_Site_logo extends Widget_Base {
|
|
266 |
switch ( $settings['link_to'] ) {
|
267 |
case 'custom' :
|
268 |
if ( ! empty( $settings['link']['url'] ) ) {
|
269 |
-
$link = $settings['link']['url'];
|
270 |
} else {
|
271 |
$link = false;
|
272 |
}
|
273 |
break;
|
274 |
|
275 |
case 'home' :
|
276 |
-
$link = get_home_url();
|
277 |
break;
|
278 |
|
279 |
case 'none' :
|
@@ -307,7 +307,7 @@ class Press_Elements_Site_logo extends Widget_Base {
|
|
307 |
link_url = settings.link.url;
|
308 |
break;
|
309 |
case 'home':
|
310 |
-
link_url = '<?php echo get_home_url(); ?>';
|
311 |
break;
|
312 |
case 'none':
|
313 |
default:
|
266 |
switch ( $settings['link_to'] ) {
|
267 |
case 'custom' :
|
268 |
if ( ! empty( $settings['link']['url'] ) ) {
|
269 |
+
$link = esc_url( $settings['link']['url'] );
|
270 |
} else {
|
271 |
$link = false;
|
272 |
}
|
273 |
break;
|
274 |
|
275 |
case 'home' :
|
276 |
+
$link = esc_url( get_home_url() );
|
277 |
break;
|
278 |
|
279 |
case 'none' :
|
307 |
link_url = settings.link.url;
|
308 |
break;
|
309 |
case 'home':
|
310 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
311 |
break;
|
312 |
case 'none':
|
313 |
default:
|
widgets/site-title.php
CHANGED
@@ -188,14 +188,14 @@ class Press_Elements_Site_Title extends Widget_Base {
|
|
188 |
switch ( $settings['link_to'] ) {
|
189 |
case 'custom' :
|
190 |
if ( ! empty( $settings['link']['url'] ) ) {
|
191 |
-
$link = $settings['link']['url'];
|
192 |
} else {
|
193 |
$link = false;
|
194 |
}
|
195 |
break;
|
196 |
|
197 |
case 'home' :
|
198 |
-
$link = get_home_url();
|
199 |
break;
|
200 |
|
201 |
case 'none' :
|
@@ -229,7 +229,7 @@ class Press_Elements_Site_Title extends Widget_Base {
|
|
229 |
link_url = settings.link.url;
|
230 |
break;
|
231 |
case 'home':
|
232 |
-
link_url = '<?php echo get_home_url(); ?>';
|
233 |
break;
|
234 |
case 'none':
|
235 |
default:
|
188 |
switch ( $settings['link_to'] ) {
|
189 |
case 'custom' :
|
190 |
if ( ! empty( $settings['link']['url'] ) ) {
|
191 |
+
$link = esc_url( $settings['link']['url'] );
|
192 |
} else {
|
193 |
$link = false;
|
194 |
}
|
195 |
break;
|
196 |
|
197 |
case 'home' :
|
198 |
+
$link = esc_url( get_home_url() );
|
199 |
break;
|
200 |
|
201 |
case 'none' :
|
229 |
link_url = settings.link.url;
|
230 |
break;
|
231 |
case 'home':
|
232 |
+
link_url = '<?php echo esc_url( get_home_url() ); ?>';
|
233 |
break;
|
234 |
case 'none':
|
235 |
default:
|