What course attributes do
Course attributes are custom fields you attach to courses so visitors can filter your public course catalog by them — for example Course Length (a number filter with ranges like “1 – 5 hours”) or Delivery Method (a text filter with values like “Online” / “In‑person”). Each attribute appears as a filter group in the left sidebar of the public catalog page on your website, and (when enabled) on each course row in the list and on the course detail page.
Create or open an attribute
- From Educatify, go to Course attributes. If you have no attributes yet, you are taken straight to the create form; otherwise use Add or open an existing row.
- Fill in Setup, then click Save setup. For Number attributes a Filter Ranges section appears below after the first save — define the ranges and click Save ranges.
- Assign values to individual courses from each course's Custom attributes tab. The status card at the top of this page tracks how many courses already have a value.
Readiness card
Once the attribute exists, the colored status card at the top of the page summarizes whether the filter is ready to show publicly:
- 🔴 Hidden — the attribute is inactive and will not appear publicly.
- 🟡 Needs ranges or No course values yet — the filter is active but will not return any results until ranges are defined (Number attributes) and at least one course has a value.
- 🟢 Ready — visible in the public catalog. Use Preview on public site to confirm.
Setup fields
- Display label (required)
- Shown to admins and used as the public filter group header (e.g. “Course Length”).
- Internal code (required, immutable)
- Used in URLs and APIs. Auto‑generated from the label on first save; lowercase letters, digits, and hyphens only. Cannot be changed after save — pick something stable.
- Filter type (required, immutable)
- Number — filter by ranges you define (e.g. “1 – 5 hours”, “30+ hours”). Text — filter by exact value match (e.g. “Online”). Cannot be changed after save.
- Unit (Number only, optional)
- Appended to values in the public UI — e.g. hours renders “8.5 hours” in the sidebar and on the course detail page.
- Display order
- Controls position in both the public filter sidebar and the Program Details tab on the course page. Lower numbers appear first.
- Active
- Off removes the filter from the public catalog entirely. Stored values on courses are preserved — turning it back on restores everything.
- Show in sidebar filters
- Off keeps the attribute on courses (you can still assign values and surface them elsewhere) but hides it from the public catalog's left‑margin filter list.
- Show in course index
- On displays the attribute's label and value on each course row in the public course list for courses that have a value set.
- Allow multi‑select
- On renders the filter group as checkboxes — visitors can pick multiple options and results match any of them. Off renders radio buttons (one option at a time).
Filter Ranges (Number attributes only)
Each range becomes one checkbox/radio in the public sidebar. The section only appears once the attribute has been saved.
- Label — what visitors see (e.g. “1 – 5 Hours”). Leaving the label blank and tabbing out of Min/Max will auto‑suggest one using the unit you set.
- Min / Max — the numeric bounds. Leave Max blank for open‑ended ranges like “30+”. Leave Min blank for “Up to X” ranges.
- Order / remove — the up/down arrows reorder ranges; × removes a range. Order in the table is the order shown publicly.
- + Add range adds an empty row. Generate evenly… prompts for from, to, and step, then builds a contiguous set of ranges (with an optional open‑ended “+” range at the top). It replaces the current list, so use it on a fresh attribute or when you want to start over.
- Save ranges commits the entire list as a single full‑replace operation. If a row fails validation (missing label, min > max, etc.) the save aborts and nothing changes.
More than 20 ranges may overwhelm the public sidebar — the editor will warn you. Consider consolidating.
Assigning values to courses
Open any course and go to its Custom attributes tab. Number attributes accept a single numeric value (matched against your ranges at filter time); Text attributes accept a free‑form value (or a fixed list, depending on your setup). Only courses that have a value participate in that filter — the coverage line in the readiness card shows progress.
After you save
Click Preview on public site in the status card to open your school's public course catalog in a new tab, and confirm:
- The new filter group appears in the sidebar with the expected label and options (or doesn't, if Show in sidebar filters is off).
- Selecting a value narrows the course list as expected.
- If Show in course index is on, the label/value shows on each course row.
Deleting
v1 doesn't support hard‑delete. The delete action on the index page deactivates the attribute — it disappears from the public catalog but every value already stored on courses is preserved and can be restored by toggling Active back on.