项目

CMS Kit:博客功能

博客功能提供了管理和展示博客及博客文章所需的用户界面。

启用博客功能

默认情况下,CMS Kit的各项功能处于禁用状态。因此,在开始使用前,您需要启用所需功能。您可以使用全局功能系统在开发时启用/禁用CMS Kit功能。或者,您也可以使用ABP的功能系统在运行时禁用CMS Kit功能。

请查看CMS Kit模块文档的"如何安装"部分,了解如何在开发时启用/禁用CMS Kit功能。

用户界面

菜单项

博客功能为管理应用程序添加了以下菜单项:

  • 博客管理:博客管理页面
  • 文章管理:博客文章管理页面

页面功能

博客管理

博客页面用于在系统中创建和管理博客。

博客页面

新建博客模态框截图:

博客编辑

Slug是博客的URL部分。在此示例中,博客的根URL将变为your-domain.com/blogs/technical-blog/

  • 您可以使用CmsBlogsWebConsts.BlogRoutePrefix常量更改默认slug。例如,如果将其设置为foo,博客的根URL将变为your-domain.com/foo/technical-blog/

    public override void PreConfigureServices(ServiceConfigurationContext context)
    {
        CmsBlogsWebConsts.BlogsRoutePrefix = "foo";
    }
    

博客特性

博客功能使用了其他一些CMS Kit功能。您可以通过点击博客的功能操作来启用或禁用这些功能。

博客功能操作

您可以为博客文章选择/取消选择所需的功能。

功能对话框

博客文章中的快速导航栏

如果启用"博客文章中的快速导航栏",将启用如下所示的滚动索引功能。

滚动索引

博客文章管理

创建博客后,您可以在此页面管理博客文章。

博客文章页面

您可以在此页面创建和编辑现有的博客文章。如果启用了特定功能(如标签),您可以在此页面为博客文章设置标签。

博客文章编辑

内部实现

领域层

聚合根

本模块遵循实体最佳实践与规范指南。

  • Blog(聚合根):表示应用程序中的博客
  • BlogPost(聚合根):表示博客中的文章
  • BlogFeature(聚合根):表示博客功能的启用/禁用状态,如反应、评分、评论等

仓储

本模块遵循仓储最佳实践与规范指南。为此功能定义了以下仓储:

  • IBlogRepository
  • IBlogPostRepository
  • IBlogFeatureRepository

领域服务

本模块遵循领域服务最佳实践与规范指南。

  • BlogManager
  • BlogPostManager
  • BlogFeatureManager

应用层

应用服务

通用服务
  • BlogFeatureAppService(实现IBlogFeatureAppService接口)
管理端服务
  • BlogAdminAppService(实现IBlogAdminAppService接口)
  • BlogFeatureAdminAppService(实现IBlogFeatureAdminAppService接口)
  • BlogPostAdminAppService(实现IBlogPostAdminAppService接口)
公开服务
  • BlogPostPublicAppService(实现IBlogPostPublicAppService接口)

数据库提供程序

Entity Framework Core

数据表
  • CmsBlogs
  • CmsBlogPosts
  • CmsBlogFeatures

MongoDB

集合
  • CmsBlogs
  • CmsBlogPosts
  • CmsBlogFeatures

实体扩展

请查看CMS Kit模块文档的"实体扩展"部分,了解如何扩展CMS Kit模块博客功能的实体。

在本文档中