如何在文章页面自定义文章所在分类的同级分类样式

最后发布时间:2023-09-10 02:15:07 浏览量:

java程序设计

            if(templateChild.getParentOrder()!=null && templateChild.getParentOrder() > -1){
                List<CategoryVO> parentCategories = newCategoryArticle.getParentCategories();
                CategoryVO categoryVO = parentCategories.get(templateChild.getParentOrder());
                List<Category> partnerCategory = categoryService.findByParentId(category.getParentId());
                newCategoryArticle.setPartner(categoryService.convertToListVo(partnerCategory)); TemplateUtil.convertHtmlAndSave(categoryVO.getPath()+File.separator+templateChild.getEnName(),categoryVO.getViewName(),newCategoryArticle, templateChild);
            }else if (templateChild.getParentOrder()!=null && templateChild.getParentOrder().equals(-1)){
                CategoryVO parentCategory = newCategoryArticle.getParentCategory();
                List<Category> partnerCategory = categoryService.findByParentId(category.getParentId());
                newCategoryArticle.setPartner(categoryService.convertToListVo(partnerCategory));
                TemplateUtil.convertHtmlAndSave(parentCategory.getPath()+File.separator+templateChild.getEnName(),parentCategory.getViewName(),newCategoryArticle, templateChild);
            }else {
                TemplateUtil.convertHtmlAndSave(category.getPath()+File.separator+templateChild.getEnName(),newCategoryArticle.getViewName(),newCategoryArticle, templateChild);
            }

添加分类列表模板文件

模板文件下新增文件templates/@CATEGORY_PARTNER_MKDOC.html

点击从文件获取模板

生信小木屋

设置模板文件属性

这里主要需要设置parentOrder为0, 详细见上面java代码

  • 根据当前文章所在分类的父id, 查找分类中父id为该值的所有分类, 即为当前分类的同伴分类
    生信小木屋

模板英文名称是CATEGORY_PARTNER_MKDOC

在文章所在的分类下添加子模板

生信小木屋

  List<Template> templates = templateService.findByChild(template.getId());
        for (Template templateChild : templates){

文章在生成分类页时,也会解析字模板

生成子模板的内容

生信小木屋

html/pipline/CATEGORY_PARTNER_MKDOC/202211811130.html