URL Metadata Input

By Espen Hovlandsdal

URL input for Sanity that retrieves metadata (title, description) along with open graph information.

sanity-plugin-url-metadata-input

URL input for Sanity that retrieves metadata (title, description) along with opengraph information.

Note: The resolving is done by an addon to the Sanity API and usage will at some point be an opt-in addon that is billed.

Installation

sanity install url-metadata-input

Usage

Use it in your schema types:

// [...]
{
  fields: [
    // [...]
    {
      name: 'relatedUrl',
      title: 'Related URL',
      type: 'urlWithMetadata'
    }
  ]
}

Data model

Note: Empty keys are not included

{
  _type: 'urlWithMetadata',

  // Raw user-input URL
  url: 'http://sanity.io',

  // Resolved URL after redirects
  resolvedUrl: 'https://sanity.io/',

  // Date when the metada resolving was performed
  crawledAt: '2017-09-01T09:48:35.501Z',

  // Basic metadata (from <head> of the page)
  meta: {
    title: 'Sanity – The fully customizable, headless CMS',
    description: 'Manage structured data collaboratively [...]'
  },

  // OpenGraph data (camelcased keys, eg `og:video:width` == `videoWidth`)
  // See http://ogp.me/ for more information
  openGraph: {
    title: '...',
    description: '...',
    siteName: '...',
    type: '...',
    url: '...',
    image: '...',
    imageAlt: '...',
    imageSecureUrl: '...',
    imageType: '...',
    imageHeight: '...',
    imageWidth: '...',
    audio: '...',
    audioSecureUrl: '...',
    audioType: '...',
    determiner: '...',
    locale: '...',
    video: '...',
    videoSecureUrl: '...',
    videoType: '...',
    videoHeight: '...',
    videoWidth: '...',
  }
}

License

MIT-licensed. See LICENSE.

Install command

sanity install url-metadata-input

Contributor

Other plugins by author

GraphQL Schema

Official(made by Sanity team)

Declare a Sanity schema using GraphQL SDL syntax

Espen Hovlandsdal
Go to GraphQL Schema

Mux input

Upload videos to Mux directly from the studio.

Go to Mux input

Sanipack

An opinionated, enhanced Sanity.io plugin development experience.

Espen Hovlandsdal
Go to Sanipack