discourse/app/views
Natalie Tay a9b1fb9b43
Some checks are pending
Licenses / run (push) Waiting to run
Linting / run (push) Waiting to run
Publish Assets / publish-assets (push) Waiting to run
Tests / core backend (push) Waiting to run
Tests / plugins backend (push) Waiting to run
Tests / core frontend (Chrome) (push) Waiting to run
Tests / plugins frontend (push) Waiting to run
Tests / themes frontend (push) Waiting to run
Tests / core system (push) Waiting to run
Tests / plugins system (push) Waiting to run
Tests / themes system (push) Waiting to run
Tests / core frontend (Firefox ESR) (push) Waiting to run
Tests / core frontend (Firefox Evergreen) (push) Waiting to run
Tests / chat system (push) Waiting to run
Tests / merge (push) Blocked by required conditions
FIX: Add ld+json VideoObject to each lazy video (#34678)
Lazily loaded videos currently won't be picked up by search engines as
they do not contain an iframe or VideoObject.

This commit uses a new API `build_plugin_html
"server:topic-show-crawler-post-end"` to insert populated
[ld+json](https://developers.google.com/search/docs/appearance/structured-data/intro-structured-data#supported-formats)
into the end of each post which has a video.

Results:
-
https://search.google.com/test/rich-results/result?id=vegb8Qkz7HThsMbFaeN2AQ
-
https://search.google.com/test/rich-results/result?id=asumX41RneM2tMstchv45A
- (vimeo)
https://search.google.com/test/rich-results/result?id=EZWOMJCkDqEQIHfOLkSkcw

Note: 

There were originally two ways around this 
- add each VideoObject to the `post.cook` all the time agnostic of
crawler view
- or add them to the `<head>` with appropriate metadata, needing to
duplicate all post meta data within a `isPartOf` attribute.

I chose to create a new api so that we can satisfy both "only add the
meta data in crawler view" and prevent post metadata duplication.
2025-09-03 22:01:14 +08:00
..
about
admin/backups
application
badges
categories
common FEATURE: Append locale to links in crawler view if present (#34466) 2025-08-22 08:46:33 +08:00
default
email
embed
exceptions UX: Render emojis consistently on 404 page (#34115) 2025-08-06 11:14:23 +01:00
finish_installation FIX: Restore styles in finish-installation route (#34420) 2025-08-19 13:09:28 -04:00
groups
home_page
invites
layouts FEATURE: Append locale to links in crawler view if present (#34466) 2025-08-22 08:46:33 +08:00
list
metadata
offline
posts
published_pages
qunit DEV: Reduce surface-area of ThemeJavascriptCompiler API (#33751) 2025-07-23 13:58:29 +01:00
robots_txt
safe_mode
search
session
sitemap
static
tags
topics FIX: Add ld+json VideoObject to each lazy video (#34678) 2025-09-03 22:01:14 +08:00
user_api_keys
user_notifications FIX: Move custom digest text to correct spot (#33912) 2025-07-29 10:54:52 -05:00
users