Allow to set author url
This commit is contained in:
		
							parent
							
								
									7c0d75a29b
								
							
						
					
					
						commit
						1cb467cbac
					
				| 
						 | 
				
			
			@ -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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue