<% if (page.sidebar == null) { const root = theme.root var sidebar if (is_home()) { sidebar = root.home.sidebar } else if (is_category() || is_tag() || is_archive() || ['categories', 'tags', 'archives'].includes(page.layout)) { sidebar = root.blog.sidebar } else if (page.layout === 'index_topic' || page.layout === 'topic') { sidebar = root.topic.sidebar } else if (page.layout === 'index_wiki' || page.layout === 'wiki') { sidebar = root.wiki.sidebar } else if (page.layout === '404') { sidebar = root.error_page.sidebar } else if (page.layout === null || page.layout === 'page') { sidebar = root.page.sidebar } else if (page.layout == 'post') { sidebar = root.post.sidebar } else { sidebar = [] } if (page.layout === 'topic' && page.topic && theme.topic?.tree[page.topic]?.sidebar) { sidebar = theme.topic.tree[page.topic].sidebar } if (page.layout == 'wiki' && page.wiki && theme.wiki?.tree[page.wiki]?.sidebar) { sidebar = theme.wiki.tree[page.wiki].sidebar } page.sidebar = sidebar } // parse array string if (typeof page.sidebar == 'string') { page.sidebar = page.sidebar.replace(/ /g, '').split(','); } function layoutTitle(main, url, sub) { var el = ''; el += ''; el += '
' + main + '
'; if (sub) { let arr = sub.split('|'); if (arr.length > 1) { el += '
' + arr.shift().trim() + '
'; el += '
' + arr.join('|') + '
'; } else { el += '
' + sub + '
'; } } el += '
'; return el; } function layoutWidgets() { var el = ''; var proj; if (page.layout === 'wiki' && page.wiki) { proj = theme.wiki.tree[page.wiki]; } el += '
'; if (page.layout == 'wiki' && proj && page.menu_id == 'wiki') { el += '
'; // all products el += ''; el += ''; el += __('btn.all_wiki'); el += ''; // this product if (proj == undefined) { // 如果没有项目名,则使用menu中显示的名字 if (page.menu_id && theme.menu[page.menu_id] && md_link(theme.menu[page.menu_id])) { proj = { path: md_link(theme.menu[page.menu_id]), wiki: __(md_text(theme.menu[page.menu_id])) }; } } if (proj != undefined) { let main = proj.name || proj.title || page.wiki || page.title; let url = proj.homepage.path; let sub = proj.subtitle; el += layoutTitle(main, url, sub); } el += '
'; } if (page.sidebar) { page.sidebar.forEach((w, i) => { let name = '' let widget = {} if (typeof w == 'string') { name = w } else if (typeof w == 'object' && w.override) { name = w.override } if (name in theme.data.widgets) { Object.assign(widget, theme.data.widgets[name]) } if (typeof w == 'object' && (w.override || w.layout)) { Object.assign(widget, w) } if (widget && widget.layout) { el += partial('../widgets/' + widget.layout, {item: widget}) } }); } el += '
'; return el; } function layoutFooterDiv() { if (page.layout !== 'wiki' && theme.footer.social) { var el = '