diff --git a/lib/notion/getNotionData.js b/lib/notion/getNotionData.js index 80625ef2..688e2c0a 100644 --- a/lib/notion/getNotionData.js +++ b/lib/notion/getNotionData.js @@ -87,9 +87,9 @@ function getCustomNav({ allPages }) { if (allPages && allPages.length > 0) { allPages.forEach(p => { if (p?.slug?.indexOf('http') === 0) { - customNav.push({ icon: p.icon || null, name: p.title, to: p.slug, show: true }) + customNav.push({ icon: p.icon || null, name: p.title, to: p.slug, target: '_blank', show: true }) } else { - customNav.push({ icon: p.icon || null, name: p.title, to: '/' + p.slug, show: true }) + customNav.push({ icon: p.icon || null, name: p.title, to: '/' + p.slug, target: '_self', show: true }) } }) } @@ -107,6 +107,9 @@ function getCustomMenu({ collectionData }) { if (menuPages && menuPages.length > 0) { menuPages.forEach(e => { e.show = true + if (e?.slug?.indexOf('http') === 0) { + e.target = '_blank' + } if (e.type === BLOG.NOTION_PROPERTY_NAME.type_menu) { menus.push(e) } else if (e.type === BLOG.NOTION_PROPERTY_NAME.type_sub_menu) { @@ -304,6 +307,7 @@ async function getDataBaseInfoByNotionAPI({ pageId, from }) { const notice = await getNotice(collectionData.filter(post => { return post && post?.type && post?.type === 'Notice' && post.status === 'Published' })?.[0]) const categoryOptions = getAllCategories({ allPages, categoryOptions: getCategoryOptions(schema) }) const tagOptions = getAllTags({ allPages, tagOptions: getTagOptions(schema) }) + // 旧的菜单 const customNav = getCustomNav({ allPages: collectionData.filter(post => post.type === 'Page' && post.status === 'Published') }) // 新的菜单 const customMenu = await getCustomMenu({ collectionData }) diff --git a/themes/simple/components/MenuItemDrop.js b/themes/simple/components/MenuItemDrop.js index 3367828d..4286488a 100644 --- a/themes/simple/components/MenuItemDrop.js +++ b/themes/simple/components/MenuItemDrop.js @@ -14,6 +14,7 @@ export const MenuItemDrop = ({ link }) => { {!hasSubMenu && <>{link?.icon && }{link?.name} {hasSubMenu && } @@ -30,7 +31,7 @@ export const MenuItemDrop = ({ link }) => { {hasSubMenu &&