Skip to content
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,5 @@ pnpm-lock.yaml
package-lock.json
public/uploads
public/apos-frontend
.DS_Store
.nyc_output
6 changes: 6 additions & 0 deletions packages/seo/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Changelog

## UNRELEASED

### Adds
- Adds structured data and the related fields to page and piece types. Also adds basic organization information to all pages.
- Adds unit tests.

## 1.3.2 (2025-09-03)

### Changes
Expand Down
1,778 changes: 1,677 additions & 101 deletions packages/seo/README.md

Large diffs are not rendered by default.

400 changes: 376 additions & 24 deletions packages/seo/i18n/de.json

Large diffs are not rendered by default.

401 changes: 376 additions & 25 deletions packages/seo/i18n/en.json

Large diffs are not rendered by default.

402 changes: 377 additions & 25 deletions packages/seo/i18n/es.json

Large diffs are not rendered by default.

400 changes: 376 additions & 24 deletions packages/seo/i18n/fr.json

Large diffs are not rendered by default.

398 changes: 375 additions & 23 deletions packages/seo/i18n/it.json

Large diffs are not rendered by default.

399 changes: 375 additions & 24 deletions packages/seo/i18n/pt-BR.json

Large diffs are not rendered by default.

402 changes: 377 additions & 25 deletions packages/seo/i18n/sk.json

Large diffs are not rendered by default.

17 changes: 15 additions & 2 deletions packages/seo/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,29 @@ module.exports = {
self.appendNodes('head', 'tagManagerHead');
self.prependNodes('body', 'tagManagerBody');
},
methods(self) {
methods(self, options) {
return {
metaHead(req) {
return getMetaHead(req.data);
return getMetaHead(req.data, options);
},
tagManagerHead(req) {
return getTagManagerHead(req.data);
},
tagManagerBody(req) {
return getTagManagerBody(req.data);
},
// Register a custom JSON-LD schema generator
// schemaType: string - the schema type name (e.g., 'Book', 'SoftwareApplication')
// schemaGenerator: function(data) - function that returns a schema object or null
registerSchema(schemaType, schemaGenerator) {
if (!self.customSchemas) {
self.customSchemas = {};
}
self.customSchemas[schemaType] = schemaGenerator;
},
// Get all registered custom schemas
getCustomSchemas() {
return self.customSchemas || {};
}
};
}
Expand Down
Loading