梓航建站CMS独立版最新v1.9.4全插件PC+H5
一.介绍
梓航DIY企业建站系统独立版最新v1.9.4版本全插件PC+H5 !
几十套模板主题任意切换
目前本博主看到外面都是很老版本,无法搭建,插件功能极少
二.服务器环境
网站环境:Nginx 1.21 + MySQL 5.7.46 + PHP-72
常见插件:fileinfo ; redis
三.搭建效果图片(图片仅测试参考)
后端部分VUE代码,Details.vue文件代码:
<template>
<div class="content-side" :style="style">
<div class="content-box">
<div class="inner-box">
<h2 class="text-center pd_t20">{{details.title}}</h2>
<div class="issue_time text-center">
<template v-if="item.set.showType"><span>分类:</span>{{details.type_title}}</template>
<template v-if="item.set.showAuthor"><span class="mg_l20">作者:</span>{{details.author}}</template>
<template v-if="item.set.showReleaseTime"><span class="mg_l20">发布时间:</span>{{ parseTime(details.time,'{y}-{m}-{d} {h}:{i}') }}</template>
</div>
<div class="text pad_tb20" v-html="details.content"></div>
</div>
</div>
<div class="bottom-page clearfix">
<div class="inner-column flex_ai_jcsb pad_tb20">
<a class="page_title" :href="last.details_url" v-if="last">
<span>上一篇:</span>{{last.title}}
</a>
<a class="page_title" :href="next.details_url" v-if="next">
<span>下一篇:</span>{{next.title}}
</a>
</div>
</div>
</div>
</template>
<script>
module.exports = {
props: {
item: {
type: Object,
default: () => {}
}
},
data() {
return {
details:'',
last:null,
next:null
}
},
computed: {
style() {
return {
height: '400px',
backgroundColor: this.item.set.backgroundColor,
marginTop: (this.item.set.marginTop || 0) + 'px',
marginRight: (this.item.set.marginRight || 0) + 'px',
marginBottom: (this.item.set.marginBottom || 0) + 'px',
marginLeft: (this.item.set.marginLeft || 0) + 'px',
paddingTop: (this.item.set.paddingTop || 0) + 'px',
paddingRight: (this.item.set.paddingRight || 0) + 'px',
paddingBottom: (this.item.set.paddingBottom || 0) + 'px',
paddingLeft: (this.item.set.paddingLeft || 0) + 'px'
}
}
},
created(){
const that = this
let api = sessionStorage.getItem('apiArticle')
let params = {
aid:getQuery('aid'),
id:getQuery('id')
}
axios({
method: "GET",
url: api,
params: params,
headers: {
"Content-Type": "application/json"
}
}).then(function(res) {
if(res.data && res.data.code === 200){
that.details = res.data.data.details
that.last = res.data.data.last
that.next = res.data.data.next
}
})
}
}
</script>
<style>
.content-box{
position:relative;
border-bottom: 1px solid #eee;
}
.content-box .inner-box h2{
position:relative;
color:#222222;
font-size: 18px;
line-height: 1.3em;
font-weight: 700;
margin-bottom:20px;
}
.content-box .inner-box .text p{
position:relative;
color:#7e8597;
font-size:15px;
line-height:1.8em;
margin-bottom:16px;
}
.issue_time{
padding-bottom: 15px;
border-bottom: 1px solid #e2e8f0;
}
.issue_time span, .bottom-page span{
font-size: 14px;
font-weight: bold;
}
.bottom-page a{
padding: 8px 15px;
border: 1px solid #cecece;
border-radius: 25px;
}
.bottom-page a:hover{
background: #e4e4e4;
transition: .2s;
}
.page_title{
min-width:100px;
max-width:200px;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
</style>