dimartec Fix the course index pages
Contents Work with us →
dimartec®

Fix the course index pages

London College of Style

Contents
Site: londoncollegeofstyle.com

Fix the course index pages

Source: GEO Technical Site Audit – LCS (5 August 2026), Tier 1 recommendation 2 of 6

Two changes to two pages, https://londoncollegeofstyle.com/all-courses/ and https://londoncollegeofstyle.com/london-courses/:

  1. Render the course list as static HTML present in the page source.
  2. Replace the placeholder meta descriptions.

Your setup

Confirmed live on 24 August 2026:

◆  Current environment
CMSWordPress
Page builderElementor 4.2.3
SEO pluginRank Math SEO
Coursescustom post type, 10 published courses, listed in course-sitemap.xml
/all-courses/H1 Online Courses, meta description Online Courses, no course names or prices in the served HTML
/london-courses/H1 London Courses, meta description London Courses, no course names or prices in the served HTML
FiltersCategory (London, Online), Type (Colour analysis, Fashion styling, Interior design, Personal styling, Fashion Sustainability, Start & Grow, Fashion & Personal Styling), Level (Advanced Diploma, Diploma)
Site buildCode23
01 Part 1

Render the courses as static HTML

The requirement

Every course on each index must have its name, one-line description, level, format, duration and price in the HTML the server returns – readable without executing JavaScript and without touching a filter.

Keep the filters. The change is that they should show and hide items already in the DOM rather than fetching them after load.

Check the current state

curl -s https://londoncollegeofstyle.com/all-courses/ | grep -i "colour analysis"

Today this returns only the filter dropdown <option> label. After the fix it must return the course name inside a course card. Repeat for /london-courses/ with grep -i "flagship".

Elementor route

The indexes are Elementor layouts, so check the widget settings before touching any code.

  1. Edit the page in Elementor and select the widget rendering the course grid – a Loop Grid or Posts widget over the course post type.
  2. In Query, confirm the widget returns all courses. Raise or remove any posts-per-page limit so nothing is held back – there are only ten.
  3. In Pagination, set it to None. "Load More" and infinite scroll fetch over AJAX, which leaves the later courses out of the served HTML.
  4. If a Taxonomy Filter widget drives the Category/Type/Level dropdowns, check whether it is set to reload results over AJAX. Where the widget offers a non-AJAX or client-side filtering mode, use it.
  5. Confirm the loop item template outputs the six required fields as text – see below. If price and duration are not on the template, add them as dynamic fields from the course post type.

If a custom filter script is involved

If the grid is populated by a bespoke AJAX or REST call rather than by Elementor's own query:

  1. Find the endpoint the filter calls and the template or shortcode behind it.
  2. Move that query so it runs during page render and outputs all ten courses into the markup.
  3. Point the filter JavaScript at the rendered elements – toggle a class or the hidden attribute – instead of requesting data.
  4. Confirm no course card is injected after DOMContentLoaded.

Fields required per course

Plain, labelled text. No facts baked into images, none that exist only in a tooltip.

◆  Required fields
FieldExample
Course nameColour Analysis Course Online: Advanced Diploma
LevelAdvanced Diploma
FormatOnline, weekly live masterclasses
Duration9 weeks
Price£1,530 inc. VAT, or three interest-free instalments of £510
One-line descriptionProfessional colour analysis – seasonal theory, draping technique and colour as a chargeable client service.
LinkAnchor to the course page, with the course name as the link text

The ten courses

Figures below are as published on each course page on 24 August 2026.

◆  /all-courses/ – online portfolio (8)
CourseLevelDurationPriceLinks to
Personal Styling Female Clients Diploma – OnlineAdvanced Diploma8 weeks£1,215 (3 × £405)/courses/personal-styling-female-clients-advanced-diploma-online/
Personal Styling Male Clients Diploma – OnlineAdvanced Diploma4 weeks£465/courses/personal-styling-male-clients-advanced-diploma-online/
Colour Analysis Course Online: Advanced DiplomaAdvanced Diploma9 weeks£1,530 (3 × £510)/courses/colour-analysis-course-online/
Sub-Season Colour Analysis Masterclass CertificateMasterclass certificateOnline session + 1 day in London£745/courses/sub-season-colour-analysis-masterclass-certificate/
Interior Design Residential Diploma – OnlineDiploma (foundation)11 weeks£1,170/courses/interior-design-foundation-online-diploma/
Interior Design Commercial Advanced Diploma – OnlineAdvanced Diploma (Level 2)10 weeks£1,170/courses/interior-design-advanced-online-diploma/
Personal Stylist Business Training: Business Launch & Development – OnlineVocational mentoring, no formal qualification6 weeks£645/courses/start-and-grow-business-launch/
Fashion Sustainability Certificate – OnlineCertificate8 weeks£180/courses/fashion-sustainability-certificate-online/
◆  /london-courses/ – London portfolio (3)
CourseLevelDurationPriceLinks to
Personal Styling Advanced Diploma – Flagship LondonAdvanced Diploma1 week in London + 6 weeks online£3,245/courses/personal-styling-course-london/
Fashion & Personal Styling Advanced Diploma – Flagship LondonAdvanced Diploma6 weeks, 2.5 days/week£6,450/courses/fashion-personal-styling-advanced-diploma-london/
Sub-Season Colour Analysis Masterclass CertificateMasterclass certificateOnline session + 1 day at Russell Square£745/courses/sub-season-colour-analysis-masterclass-certificate/

The Sub-Season Masterclass is tagged both London and Online on its own page, so it belongs on both indexes. Confirm that is intended.

Three fixes to make while you are in there.

Both Interior Design pages state "3 interest-free instalments of £340" against a £1,170 fee, which totals £1,020. The Sub-Season page shows £745 for the 2026 intake in one place and £630 in a sidebar. Settle both before the figures go onto the index. Separately, five course pages state accreditation by the British Accreditation Council and the homepage meta description says "BAC accredited training", which /ace-accreditation/ says LCS has moved away from – that is one decision from LCS, applied to all six.

Add a portfolio paragraph above the grid

Two or three sentences of prose above the filters, before any course card, that AI assistants can quote as a summary of the portfolio. For /all-courses/: what is taught online, at what levels, that study is open worldwide, that sessions are recorded, that fees can be paid in three instalments. For /london-courses/: the Bloomsbury campus, the two flagship advanced diplomas, the blended format.

Link text

Use the course name as the anchor text, not "Find out more". None of the ten course pages were reached during the audit crawl – these anchors are what makes them discoverable.

02 Part 2

Replace the meta descriptions

Edit the page in WordPress, open the Rank Math panel, click Edit Snippet, replace the Description, update.

/london-courses/ – replace London Courses with:

Advanced diplomas in personal styling and fashion styling taught in person at the London
College of Style campus in Bloomsbury, plus sub-season colour analysis. Pay in full or
in three interest-free instalments.

/all-courses/ – replace Online Courses with:

Study personal styling, colour analysis, interior design, fashion sustainability and
stylist business training online with the London College of Style. Eight courses from
£180, with weekly live masterclasses and interest-free instalments.

Keep both between 150 and 160 characters after any edits.

While you are in Rank Math, standardise the title suffix to the single form | London College of Style – the site currently mixes that with London College Of Style (capital O) across templates.

03 Part 3

Purge and verify

Purge any CDN or cache layer Code23 has in front of the site, then:

  1. Source check. curl -s https://londoncollegeofstyle.com/all-courses/ | grep -c "1,215" returns 1 or more. Repeat with 3,245 on /london-courses/.
  2. Count check. All eight courses appear in the source of /all-courses/, all three in /london-courses/.
  3. JavaScript off. Load both pages with JavaScript disabled. Every course visible with name, level, format, duration and price.
  4. Filter check. Filters still work, and applying one does not trigger a network request for course data.
  5. Link check. Every course anchor resolves 200 and lands on the right page.
  6. Meta check. View source: the new <meta name="description"> is on each page, not London Courses / Online Courses.
  7. Price check. Every price and duration on the index matches its course page.
  8. Re-request indexing for both URLs in Google Search Console.

Checklist

  • Interior Design instalment arithmetic and Sub-Season price settled on the course pages
  • Accreditation wording settled with LCS and applied to the five course pages and the homepage meta description
  • All eight online courses render in the static HTML of /all-courses/
  • All three London courses render in the static HTML of /london-courses/
  • Each course shows name, level, format, duration and price as labelled text
  • Each course links to its page with the course name as anchor text
  • Pagination set to None; filters show/hide rendered items rather than fetching them
  • Portfolio paragraph added above the grid on both pages
  • /london-courses/ meta description replaced in Rank Math
  • /all-courses/ meta description replaced in Rank Math
  • Title suffix standardised to | London College of Style
  • Caches purged, both pages verified with JavaScript disabled
  • Both URLs resubmitted in Google Search Console