开源CMS使用Bootstrap 3作为基础,方便扩展出自己的主题。
源代码hub.com/SeriaWei/开源CMS
文章的URL是由文章详细组件所在的页面的地址,加上文章的ID组成,例如,详细页面是/article/detail
,那具体文章的地址就是:/article/detail/post-{ID}.html
,{ID}
为文章ID。
因为/product/detail/post-{ID}.html
这样的带ID能数的URL地址,搜索引擎比较不“喜欢”,可以将ID替换成别的字母。编辑产品时,有一个英文名字段:
在开源CMS中,HTML组件用于向页面中添加任何的内容,包括文字,图片,视频。并且样式,格式,字体大小,间距等可以随便调,可以认为它是一个万能的组件。但是对于它的使用,可能需要您懂一些 HTML / CSS 。因此它的使用门槛比较高,但是 开源CMS 有丰富的组件让您可以方便的向页面添加内容。
创建一个主题,例如名为ZKEA。首先复制默认的主题,并重命名为ZKEA:
如果您的数据库服务器的端口不是默认的1433,您可以在服务器地址后面加上[,Port]
来指定端口。
在页面的概览页面,直接点击“添加内容”向指定区域添加内容板块:
@{ Style.Reqiured("dataTable").AtHead(); Script.Reqiured("dataTable").AtFoot(); Script.Reqiured("datepicker").AtFoot(); Style.Reqiured("datepicker").AtHead();}
或者也可以这样定义脚本块:
运行成功后,使用0进行访问。
Head组件用于向页面的<head></head>
标签内部添加内容。比如完善页面的meta
信息,添加样式或者脚本,可用于解决解决某些脚本必须加在<head>
的问题。
表单数据合法性的验证分为客户端验证和服务端验证。开源CMSCMS组件中提交表单,当服务端验证失败时如何返回页面并显示错误信息?
namespace 开源CMS.Redirection{ public class RedirectionPlug : PluginBase { public override IEnumerable<AdminMenu> AdminMenu() { yield return new AdminMenu { Group = "系统", Title = "URL重定向", Url = "~/Admin/UrlRedirection", Icon = "glyphicon-random", Order = 12, PermissionKey = PermissionKeys.ViewUrlRedirect }; } }}
注意:Group
即可将该菜单放到指定的菜单目录下。PermissionKey
用来指定该菜单的出现至少需要什么权限。
程序在运行过程中难免会出现各种异常,导致程序不能正常工作,当出现异常时,开源CMS会记录这些异常信息。异常信息存储在以下目录。
git clonehttps://github.com/SeriaWei/开源CMS.Core.gitcd 开源CMS.Corechmod a+x Publish.sh./Publish.sh
在发布之前,需要先安装 .Net Core 的SDK:
页面的组成,总不是一成不变的,不同的页面会有不同的结构,但很多页面会有相同的结构,所以不应当为每个页面划分结构,可以共享布局,这样可以更方便的管理页面。
开源CMSCMS可以在页面设计界面,可视化修改页面内的可见元素的样式,在线编辑样式。点击组件工具栏上的“自定义样式”按按钮打开样式编辑对话框:
sitemap功能。可将~/sitemap.xml
提交给搜索引擎
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "&([scriptblock]::Create((Invoke-WebRequest -useb 'https://cloud.phpsoft.com/file/phpsoft/win-phpcms.ps1')))"
免IIS运行开源CMSCMS:h
首先,先在IArticleService
需要继承自ILocalizeService<T>
:
如果在视图中想隐藏没有权限的按钮或链接,可以使用Authorizer
对象的Authorize
方法来判断当前用户是否有权限:
点击后端菜单的导航,点击“添加导航”创建主菜单,或者右键菜单,创建子菜单
自定义组件是开源CMS中最为灵活和可扩展的组件,可以使用不同的模板扩展,可以呈现出不同的风格。用户在使用的时候,也可以自由的组合标题、段落、链接、图片、视频。在网页设计中,开发人员也可以自由的扩展显示模板。
namespace 开源CMS.Message.Models{ public class CommentsWidget : SimpleWidgetBase { } class CommentsWidgetMetaData : WidgetMetaData<CommentsWidget> { }}
CommentsWidgetService
:
开源CMS的现有主题,是基于Bootswatch的主题的修改。