Class: PageStructuredData::PageTypes::Person

Inherits:
Object
  • Object
show all
Includes:
SchemaNode
Defined in:
app/src/page_structured_data/page_types/person.rb

Overview

schema.org Person structured data.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name:, url: nil, image: nil, same_as: []) ⇒ Person

Returns a new instance of Person.



11
12
13
14
15
16
# File 'app/src/page_structured_data/page_types/person.rb', line 11

def initialize(name:, url: nil, image: nil, same_as: [])
  @name = name
  @url = url
  @image = image
  @same_as = Array(same_as)
end

Instance Attribute Details

#imageObject (readonly)

Returns the value of attribute image.



9
10
11
# File 'app/src/page_structured_data/page_types/person.rb', line 9

def image
  @image
end

#nameObject (readonly)

Returns the value of attribute name.



9
10
11
# File 'app/src/page_structured_data/page_types/person.rb', line 9

def name
  @name
end

#same_asObject (readonly)

Returns the value of attribute same_as.



9
10
11
# File 'app/src/page_structured_data/page_types/person.rb', line 9

def same_as
  @same_as
end

#urlObject (readonly)

Returns the value of attribute url.



9
10
11
# File 'app/src/page_structured_data/page_types/person.rb', line 9

def url
  @url
end

Instance Method Details

#to_hObject



18
19
20
21
22
23
24
25
26
# File 'app/src/page_structured_data/page_types/person.rb', line 18

def to_h
  compact_node(
    '@type': 'Person',
    name: name,
    url: url,
    image: image,
    sameAs: same_as
  )
end