diff --git a/src/AKSRT/Widgets/ButtonsWidget.php b/src/AKSRT/Widgets/ButtonsWidget.php
index b28a6bb3..98ddbfc7 100644
--- a/src/AKSRT/Widgets/ButtonsWidget.php
+++ b/src/AKSRT/Widgets/ButtonsWidget.php
@@ -28,6 +28,16 @@ class ButtonsWidget extends \WP_Widget {
if (!$buttons && isset($instance['items']) && is_array($instance['items'])) {
$buttons = $instance['items'];
}
+ if (!$buttons) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请添加至少一个按钮', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '
' . esc_html__('请添加至少一个按钮', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
+ return;
+ }
$align = sanitize_key((string) ($instance['align'] ?? 'center'));
if (!in_array($align, ['left', 'center', 'right'], true)) {
diff --git a/src/AKSRT/Widgets/IconCardsWidget.php b/src/AKSRT/Widgets/IconCardsWidget.php
index c34988b2..8bfe13d0 100644
--- a/src/AKSRT/Widgets/IconCardsWidget.php
+++ b/src/AKSRT/Widgets/IconCardsWidget.php
@@ -25,6 +25,13 @@ class IconCardsWidget extends \WP_Widget {
public function widget($args, $instance): void {
$cards = $this->normalize($instance['cards'] ?? []);
if (!$cards) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请添加至少一张图标卡', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('请添加至少一张图标卡', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
return;
}
diff --git a/src/AKSRT/Widgets/WidgetComboInfo.php b/src/AKSRT/Widgets/WidgetComboInfo.php
index 07feca43..95fd4892 100644
--- a/src/AKSRT/Widgets/WidgetComboInfo.php
+++ b/src/AKSRT/Widgets/WidgetComboInfo.php
@@ -27,6 +27,13 @@ class WidgetComboInfo extends \WP_Widget {
public function widget($args, $instance): void {
$cards = $this->normalize_cards($instance['cards'] ?? []);
if (!$cards) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请添加至少一张组合信息卡', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('请添加至少一张组合信息卡', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
return;
}
diff --git a/src/AKSRT/Widgets/WidgetCoverCards.php b/src/AKSRT/Widgets/WidgetCoverCards.php
index 23937c9b..4898a319 100644
--- a/src/AKSRT/Widgets/WidgetCoverCards.php
+++ b/src/AKSRT/Widgets/WidgetCoverCards.php
@@ -27,6 +27,13 @@ class WidgetCoverCards extends \WP_Widget {
$title = !empty($instance['title']) ? (string) $instance['title'] : '';
$items = $this->normalize($instance['items'] ?? []);
if (!$items) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请添加至少一张封面卡片', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('请添加至少一张封面卡片', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
return;
}
diff --git a/src/AKSRT/Widgets/WidgetFeatureIntro.php b/src/AKSRT/Widgets/WidgetFeatureIntro.php
index 97664480..5f718b6b 100644
--- a/src/AKSRT/Widgets/WidgetFeatureIntro.php
+++ b/src/AKSRT/Widgets/WidgetFeatureIntro.php
@@ -25,6 +25,13 @@ class WidgetFeatureIntro extends \WP_Widget {
public function widget($args, $instance): void {
$slides = $this->normalize_slides($instance['slides'] ?? []);
if (!$slides) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请添加至少一个功能介绍面板', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('请添加至少一个功能介绍面板', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
return;
}
$heading = trim((string) ($instance['heading'] ?? ''));
@@ -85,9 +92,14 @@ class WidgetFeatureIntro extends \WP_Widget {
if ($s['media_type'] === 'video' && $s['video_url'] !== '') {
$poster = $s['video_poster'] !== '' ? ' poster="' . esc_url($s['video_poster']) . '"' : '';
$auto = $i === 0 ? ' autoplay' : '';
- echo '';
+ if ($i === 0) {
+ echo '';
+ } else {
+ echo '';
+ }
} elseif ($s['image'] !== '') {
- echo '
';
+ $ph = get_template_directory_uri() . '/assets/img/placeholder.svg';
+ echo '
';
}
echo '';
}
@@ -103,7 +115,7 @@ class WidgetFeatureIntro extends \WP_Widget {
var panels=[].slice.call(root.querySelectorAll('.aksrt-fi__panel'));
function go(i){
tabs.forEach(function(t,idx){t.classList.toggle('is-active',idx===i);});
- panels.forEach(function(p,idx){p.classList.toggle('is-active',idx===i);var v=p.querySelector('video');if(v){if(idx===i){v.play&&v.play().catch(function(){})}else{v.pause&&v.pause()}}});
+ panels.forEach(function(p,idx){p.classList.toggle('is-active',idx===i);var v=p.querySelector('video');if(v){if(idx===i){if(!v.getAttribute('src')&&v.getAttribute('data-src')){v.setAttribute('src',v.getAttribute('data-src'));}v.play&&v.play().catch(function(){})}else{v.pause&&v.pause()}}});
}
tabs.forEach(function(t){ t.addEventListener('click', function(){ go(parseInt(t.getAttribute('data-index')||'0',10)); }); });
})();
diff --git a/src/AKSRT/Widgets/WidgetHighlights.php b/src/AKSRT/Widgets/WidgetHighlights.php
index a87999a4..00fd20d0 100644
--- a/src/AKSRT/Widgets/WidgetHighlights.php
+++ b/src/AKSRT/Widgets/WidgetHighlights.php
@@ -29,6 +29,13 @@ class WidgetHighlights extends \WP_Widget {
public function widget($args, $instance): void {
$cards = $this->normalize($instance['cards'] ?? []);
if (!$cards) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请添加至少一张亮点卡片', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('请添加至少一张亮点卡片', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
return;
}
$go_link = !empty($instance['go_link']);
diff --git a/src/AKSRT/Widgets/WidgetIconCoverCards.php b/src/AKSRT/Widgets/WidgetIconCoverCards.php
index f00c221d..3c58fc45 100644
--- a/src/AKSRT/Widgets/WidgetIconCoverCards.php
+++ b/src/AKSRT/Widgets/WidgetIconCoverCards.php
@@ -29,6 +29,13 @@ class WidgetIconCoverCards extends \WP_Widget {
public function widget($args, $instance): void {
$cards = $this->normalize($instance['cards'] ?? []);
if (!$cards) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请添加至少一张图标封面卡', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('请添加至少一张图标封面卡', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
return;
}
$pc_row = max(1, min(4, (int) ($instance['pc_row'] ?? 2)));
diff --git a/src/AKSRT/Widgets/WidgetTiltCases.php b/src/AKSRT/Widgets/WidgetTiltCases.php
index 7adfd3c0..84827e86 100644
--- a/src/AKSRT/Widgets/WidgetTiltCases.php
+++ b/src/AKSRT/Widgets/WidgetTiltCases.php
@@ -31,6 +31,13 @@ class WidgetTiltCases extends \WP_Widget {
$buttons = $this->normalize_buttons($instance['intro_buttons'] ?? []);
if ($title === '' && $subtitle === '' && !$images) {
+ if (current_user_can('manage_options')) {
+ echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请配置标题或案例图片', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('请配置标题或案例图片', 'aksrt') . '
';
+ echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ }
return;
}
diff --git a/src/AKSRT/Widgets/WidgetVideoPlayer.php b/src/AKSRT/Widgets/WidgetVideoPlayer.php
index fde4bf8c..4f72397c 100644
--- a/src/AKSRT/Widgets/WidgetVideoPlayer.php
+++ b/src/AKSRT/Widgets/WidgetVideoPlayer.php
@@ -36,8 +36,9 @@ class WidgetVideoPlayer extends \WP_Widget {
if ($video_url === '') {
if (current_user_can('manage_options')) {
echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
- echo '' . esc_html__('视频播放器:', 'aksrt') . '' .
- esc_html__('请配置视频 URL 或移出该模块', 'aksrt') . '
';
+ echo function_exists('aksrt_get_widget_null')
+ ? aksrt_get_widget_null(__('请配置视频 URL', 'aksrt')) // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
+ : '' . esc_html__('视频播放器:', 'aksrt') . '' . esc_html__('请配置视频 URL 或移出该模块', 'aksrt') . '
';
echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
}
return;