Allow to set author url

This commit is contained in:
Ilgiz Mustafin 2021-09-20 23:08:49 +03:00
parent 7c0d75a29b
commit 1cb467cbac
2 changed files with 20 additions and 1 deletions

View File

@ -41,10 +41,15 @@ module Jekyll
author_type = page_drop.author["type"]
return if author_type && !VALID_AUTHOR_TYPES.include?(author_type)
{
hash = {
"@type" => author_type || "Person",
"name" => page_drop.author["name"],
}
author_url = page_drop.author["url"]
hash["url"] = author_url if author_url
hash
end
def image

View File

@ -95,6 +95,20 @@ RSpec.describe Jekyll::SeoTag::JSONLDDrop do
expect(subject["author"]).to be nil
end
end
context "when url is present" do
let(:author) { { "name" => "author", "url" => "https://example.com" } }
it "returns the author with url" do
expect(subject).to have_key("author")
expect(subject["author"]).to be_a(Hash)
expect(subject["author"]).to have_key("url")
expect(subject["author"]["url"]).to eql("https://example.com")
expect(subject["author"]).to have_key("name")
expect(subject["author"]["name"]).to be_a(String)
expect(subject["author"]["name"]).to eql("author")
end
end
end
context "image" do