Watch a live product demo 👀 See how Sanity powers richer commerce experiences

How to Use the "of" property in a "block" schema type

5 replies
Last updated: Apr 2, 2020
I'm struggling to find guides/tutorials relating to the "block" schema type using the "of" property? I seem to be missing a trick. Can anyone point me in the right direction? Thanks.

https://www.sanity.io/docs/block-type#of-d0f97ffa1dd9
Apr 1, 2020, 7:30 PM
something like this?

{
      title: "Body Copy",
      name: "bodyCopy",
      type: "array",
      of: [{ type: "block" }, { type: "inlineImage" }]
    }
Apr 1, 2020, 7:39 PM
to really use portable text its an
array
type
of
... then add your types ... in this example that is
block
and a custom object i made called
inlineImage
Apr 1, 2020, 7:40 PM
user N
Thanks for the quick response!
I'm looking at
inline
content within
block
type.
From the docs the
block
type
of
property states:"An array of inline content types that you can place in running text from the Insert menu."

What types are considered inline? I thought
string
would be one? I can't use type
span
for some reason.
The example in the docs has:

{
title: 'Rich text',
type: 'array',
of: [
{
type: 'block',
of: [
{type: 'footnote'}
]
}
]
}

But no explanation of
footnote
type.
I was hoping to inject like a placeholder. For example, you want to inject the site name without the need to manually enter it.

I tried the following:

blot.js

`{
title: 'Blot',
name: 'blot',
type: 'string',
options: {
list: [
{ title:
My Site Name
, value: 'site_name' }, ...

     
]}`

document.js


{
  title: 'Body Text',
  name: 'body',

type: 'array',
  of: [
    {
      type: 'block',
      of: [
        {type: 'blot'}
      ]
    }
  ]
}
Apr 1, 2020, 9:52 PM
ahh, i'm tracking .. i think
blot
in this case would likely need to be another type in the array, possibly even as a
reference
type, since that's what you're actually trying to do.. reference the type of
blot
Apr 1, 2020, 10:15 PM
Thanks
user N
that worked like a charm!
I changed it to the following:


{
  type: 'block'
  of: [
     { type: 'reference', to: [{ type: 'some_document'}] }
  ]
}

Apr 2, 2020, 8:09 AM

Sanity.io – build remarkable experiences at scale

Sanity is a customizable solution that treats content as data to power your digital business. Free to get started, and pay-as-you-go on all plans.

Related answers

Get more help in the community Slack

TopicCategoriesFeaturedRepliesLast Updated
After adding the subtitle and running this code npm run graphql-deploy It does nothingSep 15, 2020
how to limit a reference to just one entry in Studio reference input side versus the default as-many-entries-as-you-fill-in-an-array...Sep 18, 2020
Is it possible to fetch more than one "_type" using GROQ?Nov 2, 2020
I want to add a view with the Structure builder (S.view.component) where I list similar documents based on the title. What...Sep 23, 2020
Is there a structure builder example where the format of each preview for the document list is modified?Feb 3, 2021
I have an array of references to a country schema type but it always just returns NULL values for meJan 30, 2021
Hi, I need help with a query for getting the url of an image asset. Here is what I've been trying, but I only get the _ref...Dec 1, 2020
Sanity UI looks brilliant :smiley: Is something like the current date picker possible at the moment? I’m not sure if anicon...Dec 21, 2020
Hey everyone. I have been coding and may have potentially accidentally deleted something. Does anyone know how to resolve...Dec 26, 2020
Hello everyone and happy new year :raised_hands::skin-tone-2:, I have a problem with outputting Portable Text :disappointed:...Jan 1, 2021

Related contributions

Clean Next.js + Sanity app
- Template

Official(made by Sanity team)

A clean example of Next.js with embedded Sanity ready for recomposition.

Cody Olsen
Go to Clean Next.js + Sanity app

Blog with Built-in Content Editing
- Template

Official(made by Sanity team)

A Sanity-powered blog with built-in content editing and instant previews.

Go to Blog with Built-in Content Editing