Documentation

Find documentation for our Joomla extensions on this page.

JoomSchool - Manage Academic

The academic structure is the backbone of JoomSchool — every student, mark, attendance record and report ties back to it. This article walks through setting up academic years, classes, sections, divisions and subjects in the right order.

Overview

Before you can add a single student or record a single attendance, JoomSchool needs to know how your school is organised. There are five concepts to define, and they relate to each other:

  • Academic Year — a calendar year (or school year) under which all enrolment, marks, attendance and payment records are stamped.
  • Class — a year level or grade (e.g. "Class 6", "Year 11"), linked to a grade scale.
  • Section — a smaller group within a class (e.g. "A", "B", "Red", "Blue").
  • Division — a parallel axis that splits a class differently (e.g. "Morning shift" / "Afternoon shift", "Primary" / "Secondary").
  • Subject — what teachers teach and what marks are recorded against (e.g. Maths, English, Biology).

Hierarchy at a glance


Academic Year         (everything in JoomSchool is stamped with a year)
└── Class             e.g. "Class 6", "Year 11"
    ├── Section       e.g. "A", "B", "C" — sub-groups inside a class
    ├── Division      e.g. "Morning" / "Afternoon" — a parallel axis to sections
    └── Subject       e.g. "Maths", "English" — taught in the class

A Student is positioned as:
    Academic Year + Class + Section(s) + Division(s) + Roll Number

A few things worth knowing about this tree:

  • Sections, Divisions and Subjects are master lists. You define each one once and then attach it to a Class via the Class form's Academic Info tab. A single Section called "A" can exist across many classes; you do not recreate it per class.
  • A Class can have several Sections and several Divisions at the same time. Sections and Divisions are two different ways to slice the same class — a student belongs to at least one of each.
  • Subjects are attached to the Class, not directly to the Section or Division. Every student in Class 6 takes the subjects defined on Class 6, regardless of which Section they're in.

Setup order

To avoid empty dropdowns, build the structure from the leaves up:

  1. Academic Year — the year the records will be stamped with.
  2. Subjects — the master list of courses.
  3. Sections — A, B, C (or whatever names you use).
  4. Divisions — Morning, Afternoon (skip this step if your school doesn't use divisions).
  5. Classes — created last, linking each class to the sections, divisions and subjects it offers.
  6. Teachers, Students, Parents — added after the academic structure is complete.

The Academic hub

JoomSchool gives you a dedicated quick-navigation page that links to all five concepts. To open it:

  • Go to Components → JoomSchool → Dashboard and look for the Academic card, or
  • From the Students list view, click the Manage Academic Year toolbar button (which leads to the Academic hub).

The hub shows six tiles: Academic Year, Subjects, Sections, Division, Class, Promotion. Each tile is a one-click shortcut to the matching list view. The first five are explained in this article; Promotion is a year-end task covered in its own article.

Prerequisites

None — academic setup is the very first thing you do after installation. The only prior step is finishing the Global Configuration options so the school name, currency and PDF defaults are right.

Academic Years

Every record in JoomSchool is stamped with an academic year. You can have many years on file simultaneously (so you keep history) and one of them is marked the current year so new records default to it.

Creating an academic year

  1. From the Academic hub, click Academic Year (or open Components → JoomSchool → Students and click Manage Academic Year in the toolbar).
  2. Click New to open the form.
  3. Fill in Year — a 4-digit integer such as 2025. The form accepts only whole numbers.
  4. Set Status to Published.
  5. Click Save & Close.

The valid range of years is set in Components → JoomSchool → Options → Account: Year Range Start (default 2015) and Year Range End (default 2025). Adjust those to extend the picker forward as time passes.

Marking the current year

Use the toolbar Year Switcher at the top of any view that depends on academic year (Students, Attendance, Marks, Payments, Accounting, Promotion). The Year Switcher is a dropdown labelled with the currently active year; pick a different one and every list immediately re-filters to that year.

The Year Switcher is also how you "set the working year" for new records: whatever year is selected when you create a student or a payment becomes the year stamped on the new record.

Subjects

Subjects are the courses taught at the school. They appear in the marks form, the result sheet and the teacher's frontend dashboard.

Creating a subject

  1. Open the Academic hub and click Subjects (or Components → JoomSchool → Subjects).
  2. Click New.
  3. Fill in:
FieldDescriptionRequired
Subject Name The full name (e.g. "Mathematics"). Yes
Short Name Abbreviation used on result sheets where space is tight (e.g. "Math"). No
Subject Code Reference code (e.g. "MA-101"). Useful for cross-referencing with school information systems. No
Order Numeric ordering used to control the column order on result sheets. Lower numbers come first. No
Status Published / Unpublished / Archived / Trashed. Yes
  1. Click Save & Close.

Repeat for every subject the school teaches. You can edit subjects at any time, but be cautious: changing the Subject Name updates the label everywhere — including past result sheets — so historical printouts may no longer match the contemporary records.

Sections

Sections are small groups within a class. Most schools use letters (A, B, C) or names (Red, Blue, Green).

Creating a section

  1. Open the Academic hub and click Sections.
  2. Click New.
  3. Fill in Section Name (required).
  4. Set Status to Published.
  5. Click Save & Close.

Sections are class-agnostic at the section level — that is, "Section A" exists once and is then linked to one or more classes via the class form. This means a school can re-use the same section names across all classes.

Divisions

Divisions are a second axis of grouping that cuts across classes. Common uses are time-based (Morning / Afternoon), level-based (Primary / Secondary) or campus-based.

Creating a division

  1. Open the Academic hub and click Division.
  2. Click New.
  3. Fill in Division Name (required).
  4. Set Status to Published.
  5. Click Save & Close.

Like sections, divisions exist once and are then linked to classes (and to students) via the relevant edit forms.

Classes

A class is the central record that ties together a year level, a grade scale, and the sections, divisions and subjects offered at that level.

Creating a class

  1. Open the Academic hub and click Class.
  2. Click New. The form has two tabs.

Class Profile tab

FieldDescriptionRequired
Class Name Full name of the class (e.g. "Class 6", "Year 11"). Yes
Default Grade System The grade scale used to evaluate marks for this class (e.g. "Standard 100-mark"). The list comes from the grade categories you've defined under exams configuration. Yes

Academic Info tab

FieldDescriptionRequired
Division One or more divisions the class is offered in. Multi-select. No
Section One or more sections that exist within the class. Multi-select. No
Subject One or more subjects taught in this class. Multi-select. No
  1. Click Save & Close.

You can leave the Academic Info tab blank initially and come back to it once you've defined sections, divisions and subjects. The form revalidates each time you save.

Recommended workflow for a new school

A clean first-time setup, with no shortcuts:

  1. Set the year range in Options → Account so the picker is wide enough.
  2. Add the current academic year (e.g. 2025).
  3. Add every subject the school teaches.
  4. Add the sections (A, B, C, ...).
  5. Add the divisions if your school uses them; skip otherwise.
  6. Add the classes one by one and link them to their sections, divisions and subjects on the Academic Info tab.
  7. Switch to the current year via the toolbar Year Switcher.
  8. Move on to creating teachers, then students, then parents.

If you skip steps 3–5 and try to create a class first, you'll see empty Section, Division and Subject dropdowns on the class form.

Tips & Best Practices

  • Number subjects in the order you want them on the result sheet. Lowest order number prints first. Save your future self a re-print by getting this right at setup.
  • Keep section letters consistent across classes. If "A" means "the strongest class" in Class 5, don't suddenly use "A" for "alphabetical first" in Class 6 — reports comparing across classes will get confusing.
  • Don't unpublish a class with active students in it. Unpublishing makes the class disappear from dropdowns; existing students stay linked but new edits become awkward. Use Archive when you genuinely want to retire the class.
  • Plan promotion at the end of each year. When you advance students to the next class, the academic year stamp on the new records is the new academic year. Before promoting, make sure the new academic year exists.

A note on exam terms

JoomSchool uses the concept of an "exam term" (the part of the school year an exam belongs to — Mid-term, Final, Quiz, etc.) on the Exam record itself. There is no separate Exam Term list view, and no menu item under Academic for it. You set the term as a text field on each exam when you create it.

Troubleshooting

SymptomLikely causeFix
Year dropdown is empty when creating a student. No published academic years exist. Open the Academic hub → Academic Year → New, add one.
Section / Division / Subject dropdowns on the class form are empty. You haven't created any of those yet, or they are unpublished. Add them first, then re-edit the class.
Year Switcher shows years outside the range you wanted. Year Range Start / End in Options → Account are too wide or too narrow. Adjust those values and save.
The grade scale dropdown on a class is empty. No grade categories exist. Create a grade system / grade category first.
You changed a subject's name and old result sheets now show the new name. Subject names are looked up by ID, not stored on the result. This is by design. To keep historical printouts intact, archive the old subject and create a new one.
Two sections share the same name and the dropdown shows them as duplicates. Both rows exist in the database. Trash the older duplicate, save, then empty trash to remove permanently.
Cron Job Starts

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.

Ok