Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set schema_metatag defaults for az_person using the az_seo module. #3904

Open
4 tasks
trackleft opened this issue Nov 21, 2024 · 0 comments · Fixed by #3909
Open
4 tasks

Set schema_metatag defaults for az_person using the az_seo module. #3904

trackleft opened this issue Nov 21, 2024 · 0 comments · Fixed by #3909
Labels
editor experience Improvements to the editor experience for individuals editing Quickstart websites enhancement New feature or request

Comments

@trackleft
Copy link
Member

trackleft commented Nov 21, 2024

Motivation

Schema.org recommends adding structured data to person profile pages to improve their discoverability and accurate representation in search engines.

The relevant schema type is Person, which can be used to describe individual profiles, such as those featured on person pages.

Example JSON-LD output:

Person
Can be used on a page where a person is featured, such as a profile page.
https://schema.org/Person

<script type="application/ld+json">
{
	"@context": "http://schema.org/",
	"@type": "Person",
	"name": "{{node:title}}",
	"hasOccupation": {
		"@type": "Occupation",
		"name": "{{Title/Position}}"
	},
	"worksFor": {
		"@type": "CollegeOrUniversity",
		"name": "University of Arizona {{Department/College}}",
		"url": "{{Department/College url}}",
		"parentOrganization": {
			"@type": "EducationalOrganization",
			"name": "University of Arizona",
			"url": "https://www.arizona.edu/",
			"address": {
				"@type": "PostalAddress",
				"streetAddress": "1401 E University Blvd",
				"addressLocality": "Tucson",
				"addressRegion": "AZ",
				"postalCode": "85721",
				"addressCountry": "US"
			}
		}
	}
}
</script>

Is your feature request related to a problem? Please describe.

Person profile pages currently lack schema.org Person metatags. This means they are not optimized for bots and search engines, potentially affecting how they are consumed and displayed.


Proposed Resolution

Describe the Solution You’d Like

  • Add schema.org Person metatag defaults to az_person using the az_seo module.
  • Populate schema.org fields dynamically with data from az_person nodes.
    • Example mappings:
      • name: Map to node:title fields.
      • hasOccupation.name: Map to appropriate field.
      • worksFor.name: Map to appropriate field.
      • worksFor.url: Map to appropriate field.
      • Add static values for parentOrganization based on University of Arizona defaults.

Describe Alternatives You’ve Considered

  • Using custom templates for JSON-LD output directly within person page templates. However, this approach would reduce flexibility and reuse compared to using the schema_metatag module.

Roles and Permissions Considerations

Anonymous User

  • No impact: Schema metatags are not user-editable and only impact site metadata.

Authenticated User

  • No impact.

Content Editor

  • Gains the ability to review and modify the fields populating schema.org metatags for az_person nodes through the UI.

Content Administrator

  • Gains the ability to manage and configure schema.org defaults for az_person nodes through the az_seo module settings.

Administrator

  • Gains full control over enabling/disabling schema.org metatag functionality for az_person nodes site-wide.

Additional Context


Conditions of Satisfaction

  • Schema.org Person metatag defaults are added to az_person via the az_seo module.
  • Metatag fields map dynamically to data in az_person nodes (e.g., name, title, department).
  • The generated JSON-LD matches the schema.org Person specification.
  • Permissions are configured to allow appropriate roles to manage schema metatags.

Next Steps

  1. Implement schema defaults in az_seo.
  2. Test schema output on az_person nodes.
  3. Document any configuration or editing instructions for site administrators and content editors.
@trackleft trackleft changed the title Set schema_metatag defaults for az_person using the az_seo module. Set schema_metatag defaults for az_person using the az_seo module. Nov 21, 2024
@trackleft trackleft added the good first issue Good for newcomers label Nov 21, 2024
@trackleft trackleft linked a pull request Nov 21, 2024 that will close this issue
32 tasks
@BaoNguyen09 BaoNguyen09 self-assigned this Nov 21, 2024
@mrbeiley mrbeiley reopened this Nov 22, 2024
@mrbeiley mrbeiley linked a pull request Nov 22, 2024 that will close this issue
32 tasks
@BaoNguyen09 BaoNguyen09 removed their assignment Nov 27, 2024
@BaoNguyen09 BaoNguyen09 added enhancement New feature or request editor experience Improvements to the editor experience for individuals editing Quickstart websites and removed good first issue Good for newcomers labels Dec 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
editor experience Improvements to the editor experience for individuals editing Quickstart websites enhancement New feature or request
Projects
None yet
3 participants