mirror of https://github.com/halo-dev/halo
pull/3445/head
parent
c306b90fb9
commit
37826536b6
|
@ -96,4 +96,15 @@ sheetApi.sheetStatus = {
|
|||
text: '回收站'
|
||||
}
|
||||
}
|
||||
|
||||
sheetApi.permalinkType = {
|
||||
SECONDARY: {
|
||||
type: 'SECONDARY',
|
||||
text: '二级路径'
|
||||
},
|
||||
ROOT: {
|
||||
type: 'ROOT',
|
||||
text: '根路径'
|
||||
},
|
||||
}
|
||||
export default sheetApi
|
||||
|
|
|
@ -9,6 +9,7 @@ const keys = [
|
|||
'attachment_upload_max_files',
|
||||
'sheet_prefix',
|
||||
'post_permalink_type',
|
||||
'sheet_permalink_type',
|
||||
'archives_prefix',
|
||||
'path_suffix',
|
||||
'default_editor',
|
||||
|
|
|
@ -296,10 +296,20 @@ export default {
|
|||
return datetimeFormat(new Date(), 'YYYY-MM-DD HH:mm:ss')
|
||||
},
|
||||
fullPath() {
|
||||
const permalinkType = this.options.sheet_permalink_type
|
||||
const blogUrl = this.options.blog_url
|
||||
const sheetPrefix = this.options.sheet_prefix
|
||||
const pathSuffix = this.options.path_suffix ? this.options.path_suffix : ''
|
||||
return `${blogUrl}/${sheetPrefix}/${this.selectedSheet.slug ? this.selectedSheet.slug : '{slug}'}${pathSuffix}`
|
||||
switch (permalinkType) {
|
||||
case 'SECONDARY':
|
||||
return `${blogUrl}/${sheetPrefix}/${
|
||||
this.selectedSheet.slug ? this.selectedSheet.slug : '{slug}'
|
||||
}${pathSuffix}`
|
||||
case 'ROOT':
|
||||
return `${blogUrl}/${this.selectedSheet.slug ? this.selectedSheet.slug : '{slug}'}${pathSuffix}`
|
||||
default:
|
||||
return ''
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
|
|
|
@ -18,13 +18,47 @@
|
|||
</template>
|
||||
<a-select v-model="options.post_permalink_type">
|
||||
<a-select-option
|
||||
v-for="item in Object.keys(permalinkType)"
|
||||
v-for="item in Object.keys(postPermalinkType)"
|
||||
:key="item"
|
||||
:value="item"
|
||||
>{{ permalinkType[item].text }}</a-select-option>
|
||||
>{{ postPermalinkType[item].text }}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="自定义页面前缀:">
|
||||
<a-form-model-item label="归档前缀:">
|
||||
<template slot="help">
|
||||
<span>{{ options.blog_url }}/{{ options.archives_prefix }}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
<a-input v-model="options.archives_prefix" />
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="分类前缀:">
|
||||
<template slot="help">
|
||||
<span>{{ options.blog_url }}/{{ options.categories_prefix }}/{slug}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
<a-input v-model="options.categories_prefix" />
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="标签前缀:">
|
||||
<template slot="help">
|
||||
<span>{{ options.blog_url }}/{{ options.tags_prefix }}/{slug}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
<a-input v-model="options.tags_prefix" />
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="自定义页面固定链接类型:">
|
||||
<template slot="help">
|
||||
<span v-if="options.sheet_permalink_type === 'SECONDARY'">{{ options.blog_url }}/{{ options.sheet_prefix }}/{slug}{{ options.path_suffix }}</span>
|
||||
<span v-else-if="options.sheet_permalink_type === 'ROOT'">{{ options.blog_url }}/{slug}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
<a-select v-model="options.sheet_permalink_type">
|
||||
<a-select-option
|
||||
v-for="item in Object.keys(sheetPermalinkType)"
|
||||
:key="item"
|
||||
:value="item"
|
||||
>{{ sheetPermalinkType[item].text }}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<a-form-model-item
|
||||
label="自定义页面前缀:"
|
||||
v-show="options.sheet_permalink_type === 'SECONDARY'"
|
||||
>
|
||||
<template slot="help">
|
||||
<span>{{ options.blog_url }}/{{ options.sheet_prefix }}/{slug}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
|
@ -48,24 +82,6 @@
|
|||
</template>
|
||||
<a-input v-model="options.journals_prefix" />
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="归档前缀:">
|
||||
<template slot="help">
|
||||
<span>{{ options.blog_url }}/{{ options.archives_prefix }}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
<a-input v-model="options.archives_prefix" />
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="分类前缀:">
|
||||
<template slot="help">
|
||||
<span>{{ options.blog_url }}/{{ options.categories_prefix }}/{slug}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
<a-input v-model="options.categories_prefix" />
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="标签前缀:">
|
||||
<template slot="help">
|
||||
<span>{{ options.blog_url }}/{{ options.tags_prefix }}/{slug}{{ options.path_suffix }}</span>
|
||||
</template>
|
||||
<a-input v-model="options.tags_prefix" />
|
||||
</a-form-model-item>
|
||||
<a-form-model-item label="路径后缀:">
|
||||
<template slot="help">
|
||||
<span>* 格式为:<code>.{suffix}</code>,仅对内建路径有效</span>
|
||||
|
@ -89,6 +105,7 @@
|
|||
</template>
|
||||
<script>
|
||||
import postApi from '@/api/post'
|
||||
import sheetApi from '@/api/sheet'
|
||||
export default {
|
||||
name: 'PermalinkTab',
|
||||
props: {
|
||||
|
@ -107,7 +124,8 @@ export default {
|
|||
},
|
||||
data() {
|
||||
return {
|
||||
permalinkType: postApi.permalinkType,
|
||||
postPermalinkType: postApi.permalinkType,
|
||||
sheetPermalinkType: sheetApi.permalinkType,
|
||||
wrapperCol: {
|
||||
xl: { span: 8 },
|
||||
lg: { span: 8 },
|
||||
|
|
Loading…
Reference in New Issue