实战Joomla从0搭建企业站 Joomla4版

官方系列教材 - F计划

在上一节中我们已经准备了分类,并且在分类中加入了文章,现在就差将这个分类中的文章展示出来了。要实现这个功能,就必须了解一个概念——菜单项类型。在前面的章节中我们简单的提到过菜单项类型,在这一节我们就来深入的认识一下菜单项类型。

1,本节目标


理解菜单项类型与页面的关系,理解菜单项类型于组件的关系。

2,理论知识


在学习本节之前,大家需要再次阅读一下 组件 这篇文章。在这篇文中我们了解到,组件是网页主要内容的生成者,为了实现各种各样的页面,joomla是通过安装不同的组件来实现的(文章组件,ZMAXSHOP商城组件)。用户访问我们的网站是通过点击导航栏上的菜单项来进行的。为了能够让用户看到各种不同的页面,菜单项必须和组件有一定的联系。而这种联系,我们的专业术语为菜单项类型

3,菜单项类型


菜单项类型是我们在新建菜单的时候需要注意的一个非常重要的参数。在 创建菜单 一文中我们使用了一种菜单项类型 ‘外部网址’ ,这种菜单项类型的意思是:当用户点击该菜单项后,会跳转到一个指定的链接。

我们先来看效果,下图是博客菜单项的编辑界面: 

在上图中我将菜单项类型设置为 zFree - 博客式布局。并且将下面的类别参数设置为博客。保存后,前台的效果截图如下:

至此,我们就完成了博客页面的制作了。当然,还有一些小的模块没有被安排上去,这个后续再说。 

4,菜单类型的使用


总结一下 上面我们实现博客栏目做了什么?

进入菜单管理,点击菜单项目,在菜单项项目列表中找到博客菜单项,并且编辑这个菜单项。在菜单项编辑界面,点击菜单项类型选择框最右边的选择按钮,可以进入菜单项类型的选择界面。如图:

在这个图中,实际上列举出来的是所有提供菜单项类型的组件。要记住,只有组件才能够提供菜单项类型。因为页面的核心内容是由不同的组件来生成的。

如何来理解这句话呢?比如,我是文章组件的开发者,那么我就应该提供至少2个页面,一个是展示一篇文章的详细情况的,一个是展示一个分类中的文章列表的。你可能要问为什么要提供这两个页面呢,因为实际使用需要!组件的设计者是为了解决实际问题二存在的

将上面的话使用专业一点的词语来描述的话,那就是 文章组件至少需要提供两个菜单项类型,一个菜单项类型是用来展示一篇文章的,一个菜单项类型是用来展示一个分类中的所有文章的。

那么实际上是怎样的呢?我可以继续点击 上图中的“文章”,系统就会列举出文章组件所有提供的菜单项类型了。截图如下:

 在上图中,我们可以看到文章组件提供了9种菜单项类型(这比我们预期的两种要强多了),并且在每一种类型的后面都有一行描述信息,来说明这个类型的作用。

对上面的菜单项类型来做一个简单的说明:

  1. 单个文章 :当你选择菜单项类型为单个文章的时候,系统会为你提供一个参数,让你选择需要显示的是哪一篇文章。当前台用户点击这个菜单项时,系统就会将你指定的文章展示给他们看。
  2. 单个类别:当你选择菜单项类型为单个类别的时候,系统会为你提供一个参数,让你选择需要显示的是哪一类别。当前台用户点击这个菜单项时,系统就会将你指定的类别的文章展示给他们看
  3. zFree -博客式布局:以博客的方式显示某一类别中的所有文章,当你选择菜单项类型为Zfree - 博客式布局的时候,系统会为你提供一个参数,让你选择需要显示的是哪一类别。当前台用户点击这个菜单项时,系统就会将你指定的类别的文章展示给他们看。(我们就是使用这种菜单项类型来实现博客栏目的)
  4. 提交文章:这个菜单项允许用户在前台提交文章。

 由于篇幅的原因,其他的菜单项类型在此就不做细说了,大家可以自己试着用用。

5,菜单项类型的本质


菜单项类型的的本质是完成了组件部分的输出。在 深入理解模板与页面 一文中,我们已经讲到 joomla页面实际上是由很多模块位置和一个组件输出组成的。组成输出占据页面的大部分内容,模块为其进行补充,这样就做出了格式各样的页面。

笔者的一点感悟:菜单项可以决定组件部分的输出,菜单项也可以决定是否分配模块,菜单项可以决定模板的分配。实际上,如果你能为一个页面创建菜单项,那么理论上你可以随心所欲的控制这个页面。换句话说,如果你想定制一个页面的输出,那么为其创建一个单独的菜单项即可。(对于刚入门的新手,可以忽略本段话)

相信学到这里的朋友,应该能有所收获了,这是Joomla整个系统的核心所在! 

作者: 樱木花道

Joomla程序员,从J1.5到J4.x始终都在做Joomla相关开发定制工作,有超过10年行业经验,国内Joomla扩展开发商ZMAX团队的核心成员

作者网站:ZMAX程序人

评论 (0)

  • 最新在前
  • 最佳在前

第4章 重新认识Joomla

第11章 自定义字段

第18章 实现支持栏目 - 资源下载页面