34 lines
1.4 KiB
Markdown
34 lines
1.4 KiB
Markdown
## MODIFIED Requirements
|
|
|
|
### Requirement: Blog index listing (posts)
|
|
The site MUST provide a blog index page at `/blog` that lists WordPress posts as cards containing:
|
|
- featured image (when available)
|
|
- title
|
|
- excerpt/summary
|
|
- publish date
|
|
|
|
The card MUST render a footer bar that includes:
|
|
- publish date on the left
|
|
- views on the right when available (if views are not provided by the dataset, the card MUST omit views without breaking layout)
|
|
- a content source label (e.g., `blog`)
|
|
|
|
The listing MUST be ordered by publish date descending (newest first).
|
|
|
|
Each post card MUST be instrumented with Umami Track Events data attributes and MUST include at minimum:
|
|
- `data-umami-event`
|
|
- `data-umami-event-target_id`
|
|
- `data-umami-event-placement`
|
|
- `data-umami-event-target_url`
|
|
|
|
#### Scenario: Blog index lists posts
|
|
- **WHEN** the cached WordPress dataset contains posts
|
|
- **THEN** `/blog` renders a list of post cards ordered by publish date descending
|
|
|
|
#### Scenario: Blog post card click is tracked
|
|
- **WHEN** a user clicks a blog post card on `/blog`
|
|
- **THEN** the click emits an Umami event with `target_id`, `placement`, and `target_url`
|
|
|
|
#### Scenario: Blog post card layout is standardized
|
|
- **WHEN** `/blog` renders a blog post card
|
|
- **THEN** the card shows featured image (when available), title, trimmed excerpt, and a footer bar containing date, optional views, and a source label
|