';
if ($i === 0) {
- $payload = WidgetForumTopicLists::query_payload([
+ $payload = WidgetForumHotTopics::query_payload([
'count' => $count,
'orderby' => $tab['orderby'],
- 'style' => 'mini',
+ 'period' => 'all',
+ 'style' => $style,
+ 'plate' => $plate,
'paginate' => 'none',
], 1);
echo $payload['html']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
@@ -77,11 +85,13 @@ class WidgetForumTabTopics extends \WP_Widget {
if(!root||root._aksrtFtab)return; root._aksrtFtab=1;
var rest=root.getAttribute('data-rest')||'';
var count=root.getAttribute('data-count')||'6';
+ var style=root.getAttribute('data-style')||'mini';
+ var plate=root.getAttribute('data-plate')||'0';
var btns=[].slice.call(root.querySelectorAll('.aksrt-ftab__btn'));
var panels=[].slice.call(root.querySelectorAll('.aksrt-ftab__panel'));
function load(panel, orderby){
if(!panel||panel.getAttribute('data-loaded')==='1'||!rest)return;
- var qs=new URLSearchParams({page:'1',count:count,orderby:orderby||'date',style:'mini',paginate:'none'});
+ var qs=new URLSearchParams({page:'1',count:count,orderby:orderby||'date',style:style,plate:plate,period:'all',paginate:'none'});
var url=rest+(rest.indexOf('?')>-1?'&':'?')+qs.toString();
panel.classList.add('is-ajax-loading');
fetch(url,{credentials:'same-origin',headers:{Accept:'application/json','X-WP-Nonce':(window.aksrtData&&aksrtData.restNonce)||''}})
@@ -94,8 +104,16 @@ class WidgetForumTabTopics extends \WP_Widget {
}).catch(function(){panel.classList.remove('is-ajax-loading');});
}
function go(i){
- btns.forEach(function(b,idx){b.classList.toggle('is-active',idx===i);});
- panels.forEach(function(p,idx){p.classList.toggle('is-active',idx===i);});
+ btns.forEach(function(b,idx){
+ var on=idx===i;
+ b.classList.toggle('is-active',on);
+ b.setAttribute('aria-selected',on?'true':'false');
+ });
+ panels.forEach(function(p,idx){
+ var on=idx===i;
+ p.classList.toggle('is-active',on);
+ if(on){p.removeAttribute('hidden');}else{p.setAttribute('hidden','');}
+ });
var btn=btns[i], panel=panels[i];
if(btn&&panel) load(panel, btn.getAttribute('data-orderby')||'date');
}
@@ -148,6 +166,8 @@ class WidgetForumTabTopics extends \WP_Widget {
$defaults = [
'title' => __('论坛栏目', 'aksrt'),
'count' => 6,
+ 'style' => 'mini',
+ 'plate' => 0,
'tabs' => "最新|date\n热门|views\n精华|essence",
];
$instance = wp_parse_args($instance, $defaults);
@@ -170,6 +190,19 @@ class WidgetForumTabTopics extends \WP_Widget {
+
+
+
+
+
+