aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrederic Hemberger <mail@frederic-hemberger.de>2011-09-21 10:08:38 +0200
committerFrederic Hemberger <mail@frederic-hemberger.de>2011-09-21 10:08:38 +0200
commit0b5215c0f5530e29810deb71e2a27042c3e1284b (patch)
tree80d840218990378112811610e02d81d823ec9230
parent48a93a90a4b7a17e132f2b6ba80bbd5dbc1c99cb (diff)
downloadmy_new_personal_website-0b5215c0f5530e29810deb71e2a27042c3e1284b.tar.xz
my_new_personal_website-0b5215c0f5530e29810deb71e2a27042c3e1284b.zip
Adds first 150 chars of content as meta description, if no page.description specified. Fixes #162
-rw-r--r--.themes/classic/source/_includes/head.html10
-rw-r--r--plugins/octopress_filters.rb7
2 files changed, 11 insertions, 6 deletions
diff --git a/.themes/classic/source/_includes/head.html b/.themes/classic/source/_includes/head.html
index be371e92..5d817657 100644
--- a/.themes/classic/source/_includes/head.html
+++ b/.themes/classic/source/_includes/head.html
@@ -6,18 +6,16 @@
<meta charset="utf-8">
<title>{% if page.title %}{{page.title}} - {% endif %}{{site.title}}</title>
<meta name="author" content="{{site.author}}">
- {% if page.description %}
- <meta name="description" content="{{page.description}}"/>
- {% endif %}
+
+ {% capture description %}{% if page.description %}{{ page.description }}{% else %}{{ content | raw_content }}{% endif %}{% endcapture %}
+ <meta name="description" content="{{ description | strip_newlines | strip_html | truncate:150 }}">
+ {% if page.keywords %}<meta name="keywords" content="{{ page.keywords }}">{% endif %}
<!-- http://t.co/dKP3o1e -->
<meta name="HandheldFriendly" content="True">
<meta name="MobileOptimized" content="320">
<meta name="viewport" content="width=device-width, initial-scale=1">
- {% if page.keywords %}
- <meta name="keywords" content="{{page.keywords}}"/>
- {% endif %}
{% capture canonical %}{{ site.url }}{% if site.permalink contains '.html' %}{{ page.url }}{% else %}{{ page.url | remove:'index.html' }}{% endif %}{% endcapture %}
<link rel="canonical" href="{{ canonical }}">
<link href="{{ root_url }}/favicon.png" rel="shortcut icon" />
diff --git a/plugins/octopress_filters.rb b/plugins/octopress_filters.rb
index 1a959892..bade7e49 100644
--- a/plugins/octopress_filters.rb
+++ b/plugins/octopress_filters.rb
@@ -56,6 +56,13 @@ module OctopressLiquidFilters
end
end
+ # Extracts raw content DIV from template, used for page description as {{ content }}
+ # contains complete sub-template code on main page level
+ def raw_content(input)
+ /.<div class="entry-content">(?<content>[\s\S]*?)<\/div>\s*<\/article>/ =~ input
+ return (content.nil?) ? input : content
+ end
+
# Replaces relative urls with full urls
def expand_urls(input, url='')
url ||= '/'