fix: #3616545 List real programs on the Home page instead of six static cards
Follow-up on #3616545, for the Home page programs section.
Problem
"Find the Program That Matches Your Ambition" was six hard-coded card-action-text cards. Decoded from the rendered Home page:
1x Computer Science & Artificial Intelligence
2x Business Administration & Management <- the same card twice
1x Digital Media & Design
1x Engineering & Technology
1x Medicine & Health Sciences
6x "Develop expertise in software engineering, machine learning, cybersecurity..."Six cards, five distinct titles, and the Computer Science description copy-pasted onto all six. Meanwhile the site ships 20 real Program nodes (Astrophysics, Bioengineering, Applied Mathematics, Economics, Classics, ...), none of which appeared. The titles were invented — none of them matches a real Program node.
Change
config/views.view.programs.yml — add a featured block display to the Programs view:
somepager, 6 items, no pager UI- own
status+typefilters (no exposed program-type/study-level filters, unlike theblock_1listing) vartheme_bs5_educare:views-view-gridstyle atcol-12 / col-md-6 / col-lg-4, so it keeps the original 3-across, 2-row grid- inherits the
text_card_mediumrow and title sort from the default display
The display lives in the educare recipe, alongside views.view.programs itself. It deliberately does not go into varbase_news_base or a programs base recipe: Program is an Educare content type, and shipping its config from the news recipe would invert the dependency.
content/canvas_page/…fefadd5b….yml (Home) — replace the six cards with one block.views_block.programs-featured, and set the containing section from columns: 33-33-33 to columns: '100' so the full-width row lets the view's own grid render 3 across. The now-empty second section is removed. 25 components deleted, 1 added.
Testing
Fresh drush site:install of the recipe on a clean Varbase 11 build.
Before: 6 static cards, 1 duplicate title, 1 description reused 6 times, 0 program links.
After: 6 distinct real programs — African and African American Studies, Anthropology, Applied Mathematics, Art/Film and Visual Studies, Astrophysics, Bioengineering — each linking to its own /programs/... node. 0 static titles, 0 duplicated descriptions.
Layout measured in-browser: container 1116px of a 1358px page, three 380px cards per row over 2 rows — the original grid preserved.
Regression sweep, all HTTP 200 with no page errors: /, /research, /admissions, /student-life, /anthropology, /programs, /news, /events, /about. drush watchdog:show reports no log messages.
Note on related content
Tag-based related listings were already in place and are unchanged: views.view.news related and views.view.events related both use the field_tags_target_id contextual filter (taxonomy_tid from the current node) plus nid to exclude the current node.
AI-Generated: Yes
Checkpoints:
- File an issue
- Addition/Change/Update/Fix
- Testing to ensure no regression
- Automated unit testing coverage
- Automated functional testing coverage
- UX/UI designer responsibilities
- Readability
- Accessibility
- Performance
- Security
- Developer Documentation
- User Guide Documentation
- Reviewed by human
- Code review by maintainers
- Full testing and approval
- Credit contributors
- Review with the product owner
- Release notes snippet
- Release