Merge branch 'master' into add-locale-support
This commit is contained in:
commit
a2f64d46c3
13
README.md
13
README.md
|
@ -13,8 +13,8 @@ Jekyll SEO Tag adds the following meta tags to your site:
|
|||
* Canonical URL
|
||||
* Next and previous URLs on paginated pages
|
||||
* [JSON-LD Site and post metadata](https://developers.google.com/structured-data/) for richer indexing
|
||||
* [Open graph](http://ogp.me/) title, description, site title, and URL (for Facebook, LinkedIn, etc.)
|
||||
* [Twitter summary card](https://dev.twitter.com/cards/overview) metadata
|
||||
* [Open Graph](http://ogp.me/) title, description, site title, and URL (for Facebook, LinkedIn, etc.)
|
||||
* [Twitter Summary Card](https://dev.twitter.com/cards/overview) metadata
|
||||
|
||||
While you could theoretically add the necessary metadata tags yourself, Jekyll SEO Tag provides a battle-tested template of crowdsourced best-practices.
|
||||
|
||||
|
@ -194,17 +194,14 @@ The following options can be set for any particular page. While the default opti
|
|||
For most users, setting `image: [path-to-image]` on a per-page basis should be enough. If you need more control over how images are represented, the `image` property can also be an object, with the following options:
|
||||
|
||||
* `path` - The relative path to the image. Same as `image: [path-to-image]`
|
||||
* `twitter` - The relative path to a Twitter-specific image.
|
||||
* `facebook` - The relative path to a Facebook-specific image.
|
||||
* `height` - The height of the Facebook (`og:image`) image
|
||||
* `width` - The width of the Facebook (`og:image`) image
|
||||
* `height` - The height of the Open Graph (`og:image`) image
|
||||
* `width` - The width of the Open Graph (`og:image`) image
|
||||
|
||||
You can use any of the above, optional properties, like so:
|
||||
|
||||
```yml
|
||||
image:
|
||||
twitter: /img/twitter.png
|
||||
facebook: /img/facebook.png
|
||||
path: /img/twitter.png
|
||||
height: 100
|
||||
width: 100
|
||||
```
|
||||
|
|
|
@ -90,7 +90,7 @@
|
|||
{% endif %}
|
||||
|
||||
{% if page.image %}
|
||||
{% assign seo_page_image = page.image.path | default: page.image.facebook | default: page.image %}
|
||||
{% assign seo_page_image = page.image.path | default: page.image.facebook | default: page.image.twitter | default: page.image %}
|
||||
{% unless seo_page_image contains "://" %}
|
||||
{% assign seo_page_image = seo_page_image | absolute_url %}
|
||||
{% endunless %}
|
||||
|
@ -128,7 +128,8 @@
|
|||
{% endif %}
|
||||
|
||||
{% if seo_page_image %}
|
||||
<meta property="og:image" content="{{ seo_page_image }}" />
|
||||
|
||||
<meta property="og:image" content="{{ seo_page_image }}" />
|
||||
{% if page.image.height %}
|
||||
<meta property="og:image:height" content="{{ page.image.height }}" />
|
||||
{% endif %}
|
||||
|
@ -137,10 +138,6 @@
|
|||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if page.image.twitter %}
|
||||
<meta name="twitter:image" content="{{ page.image.twitter | absolute_url }}" />
|
||||
{% endif %}
|
||||
|
||||
{% if page.date %}
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="article:published_time" content="{{ page.date | date_to_xmlschema }}" />
|
||||
|
|
|
@ -172,7 +172,7 @@ describe Jekyll::SeoTag do
|
|||
context "with relative page.image as a string" do
|
||||
let(:page) { make_page("image" => "/img/foo.png") }
|
||||
|
||||
it "outputs the image" do
|
||||
it "outputs an open graph image" do
|
||||
expected = '<meta property="og:image" content="http://example.invalid/img/foo.png" />'
|
||||
expect(output).to include(expected)
|
||||
end
|
||||
|
@ -181,7 +181,7 @@ describe Jekyll::SeoTag do
|
|||
context "with absolute page.image" do
|
||||
let(:page) { make_page("image" => "http://cdn.example.invalid/img/foo.png") }
|
||||
|
||||
it "outputs the image" do
|
||||
it "outputs an open graph image" do
|
||||
expected = '<meta property="og:image" content="http://cdn.example.invalid/img/foo.png" />'
|
||||
expect(output).to include(expected)
|
||||
end
|
||||
|
@ -191,7 +191,7 @@ describe Jekyll::SeoTag do
|
|||
context "when given a path" do
|
||||
let(:page) { make_page("image" => { "path" => "/img/foo.png" }) }
|
||||
|
||||
it "outputs the image" do
|
||||
it "outputs an open graph image" do
|
||||
expected = %r!<meta property="og:image" content="http://example.invalid/img/foo.png" />!
|
||||
expect(output).to match(expected)
|
||||
end
|
||||
|
@ -200,7 +200,7 @@ describe Jekyll::SeoTag do
|
|||
context "when given a facebook image" do
|
||||
let(:page) { make_page("image" => { "facebook" => "/img/facebook.png" }) }
|
||||
|
||||
it "outputs the image" do
|
||||
it "outputs an open graph image" do
|
||||
expected = %r!<meta property="og:image" content="http://example.invalid/img/facebook.png" />!
|
||||
expect(output).to match(expected)
|
||||
end
|
||||
|
@ -209,17 +209,17 @@ describe Jekyll::SeoTag do
|
|||
context "when given a twitter image" do
|
||||
let(:page) { make_page("image" => { "twitter" => "/img/twitter.png" }) }
|
||||
|
||||
it "outputs the image" do
|
||||
expected = %r!<meta name="twitter:image" content="http://example.invalid/img/twitter.png" />!
|
||||
it "outputs an open graph image" do
|
||||
expected = %r!<meta property="og:image" content="http://example.invalid/img/twitter.png" />!
|
||||
expect(output).to match(expected)
|
||||
end
|
||||
end
|
||||
|
||||
context "when given the image height and width" do
|
||||
let(:image) { { "facebook" => "/img/foo.png", "height" => 1, "width" => 2 } }
|
||||
context "when given an image height and width" do
|
||||
let(:image) { { "path" => "/img/foo.png", "height" => 1, "width" => 2 } }
|
||||
let(:page) { make_page("image" => image) }
|
||||
|
||||
it "outputs the image" do
|
||||
it "outputs an open graph image width and height" do
|
||||
expected = %r!<meta property="og:image:height" content="1" />!
|
||||
expect(output).to match(expected)
|
||||
expected = %r!<meta property="og:image:width" content="2" />!
|
||||
|
|
Loading…
Reference in New Issue