1
|
1
|
new file mode 100644
|
...
|
...
|
@@ -0,0 +1,87 @@
|
|
0
|
+---
|
|
1
|
+layout: post
|
|
2
|
+title: "Moving to Octopress - time to customize your blog"
|
|
3
|
+date: 2013-02-16 22:56
|
|
4
|
+comments: true
|
|
5
|
+categories: [octopress]
|
|
6
|
+cover: /images/cover/avatar.png
|
|
7
|
+keywords: wordpress, octopress, seo, facebook, twitter, git, guide, howto, plugins
|
|
8
|
+description: Installing and customizing octopress blog
|
|
9
|
+---
|
|
10
|
+
|
|
11
|
+I've been a long-time [Wordpress](http://wordpress.com) user. Easy blogging --
|
|
12
|
+want to write a new post? Click there and there and you can start writing. Too
|
|
13
|
+easy and boring for hackers. Welcome to [Octopress](http://octopress.org/)
|
|
14
|
+blogging (and reserve a few hours before starting blogging :) ).
|
|
15
|
+
|
|
16
|
+It is really helpful if you know Git, HTML and
|
|
17
|
+[Markdown](http://daringfireball.net/projects/markdown).
|
|
18
|
+
|
|
19
|
+Installing and setup is really easy (the official guide is [here](http://octopress.org/docs/)).
|
|
20
|
+
|
|
21
|
+What will probably take a long time is customization. You can do whatever you
|
|
22
|
+want to. No more restrictive wordpress/blogger/...
|
|
23
|
+
|
|
24
|
+0. recommendation: Learn from others. This site is open source. My [Git](http://git.cinan.sk/octopress.git/).
|
|
25
|
+
|
|
26
|
+1. recommendation: Read this superb
|
|
27
|
+[ewal](http://www.ewal.net/2012/09/08/octopress-customizations/) guide. It
|
|
28
|
+describes how to remove "blog" slug in URL; how to create categories list; how to use
|
|
29
|
+fancybox gallery for images in articles; how to notify Google and Bing about updating
|
|
30
|
+your site and some other things.
|
|
31
|
+
|
|
32
|
+2. recommendation: SEO fixes. [Here](http://www.yatishmehta.in/seo-for-octopress).
|
|
33
|
+
|
|
34
|
+3. recommendation: Setup 404 pages in Nginx. [Here](http://blog.bigdinosaur.org/custom-error-pages/)
|
|
35
|
+
|
|
36
|
+4. recommendation: Autopublish new articles on Facebook, Twitter and others
|
|
37
|
+sites. Sign up for [ifttt.com](https://ifttt.com/) and create a recipe.
|
|
38
|
+
|
|
39
|
+5. recommendation: Add [Open Graph](http://ogp.me/) meta tags to your
|
|
40
|
+source/\_includes/head.html. Useful if you want to publish your posts on
|
|
41
|
+Facebook. These tags will set appearance of links on Facebook (and maybe other
|
|
42
|
+sites).
|
|
43
|
+
|
|
44
|
+ {% img center /images/opengraph.png Facebook and Open Graph meta tags %}
|
|
45
|
+
|
|
46
|
+ This is my source/_includes/head.html (notice "description", "keywords" and
|
|
47
|
+ opengraph tags on lines 30-35)":
|
|
48
|
+
|
|
49
|
+ {% codeblock source/_includes/head.html lang:html %}{% raw %}
|
|
50
|
+ <!DOCTYPE html>
|
|
51
|
+ <!--[if IEMobile 7 ]><html class="no-js iem7"><![endif]-->
|
|
52
|
+ <!--[if lt IE 9]><html class="no-js lte-ie8"><![endif]-->
|
|
53
|
+ <!--[if (gt IE 8)|(gt IEMobile 7)|!(IEMobile)|!(IE)]><!--><html class="no-js" lang="en"><!--<![endif]-->
|
|
54
|
+ <head>
|
|
55
|
+ <meta charset="utf-8">
|
|
56
|
+ <title>{% if page.title %}{{ page.title }} - {% endif %}{{ site.title }\}</title>
|
|
57
|
+ <meta name="author" content="{{ site.author }}">
|
|
58
|
+ {% capture description %}{% if page.description %}{{ page.description }}{% else %}{{ site.description }}{% endif %}{% endcapture %}
|
|
59
|
+ <meta name="description" content="{{ description | strip_html | condense_spaces | truncate:150 }}">
|
|
60
|
+ {% capture keywords %}{% if page.keywords %}{{ page.keywords }}{% else %}{{ site.keywords }}{% endif %}{% endcapture %}
|
|
61
|
+ <meta name="keywords" content="{{ keywords }}">
|
|
62
|
+
|
|
63
|
+ <!-- http://t.co/dKP3o1e -->
|
|
64
|
+ <meta name="HandheldFriendly" content="True">
|
|
65
|
+ <meta name="MobileOptimized" content="320">
|
|
66
|
+ <meta name="viewport" content="width=device-width, initial-scale=1">
|
|
67
|
+
|
|
68
|
+ {% capture canonical %}{{ site.url }}{% if site.permalink contains '.html' %}{{ page.url }}{% else %}{% if page.url contains site.category_dir %}/{% endif %}{{ page.url | remove:'index.html' }}{% endif %}{% endcapture %}
|
|
69
|
+ <link rel="canonical" href="{{ canonical }}">
|
|
70
|
+ <link href="{{ root_url }}/favicon.png" rel="icon">
|
|
71
|
+ <link href="{{ root_url }}/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css">
|
|
72
|
+ <script src="{{ root_url }}/javascripts/modernizr-2.0.js"></script>
|
|
73
|
+ <script src="{{ root_url }}/javascripts/ender.js"></script>
|
|
74
|
+ <script src="{{ root_url }}/javascripts/octopress.js" type="text/javascript"></script>
|
|
75
|
+ <link href="{{ site.subscribe_rss }}" rel="alternate" title="{{site.title}}" type="application/atom+xml">
|
|
76
|
+ {% include custom/head.html %}
|
|
77
|
+ {% include google_analytics.html %}
|
|
78
|
+
|
|
79
|
+ <meta property="og:site_name" content="{{ site.title }}">
|
|
80
|
+ <meta property="og:type" content="article">
|
|
81
|
+ <meta property="og:url" content="{{ site.url }}{{ page.url }}">
|
|
82
|
+ <meta property="og:image" content="{{ site.url }}{% if page.cover %}{{ page.cover }}{% else %}{{ site.cover }}{% endif %}">
|
|
83
|
+ <meta property="og:title" content="{% if page.title %}{{ page.title }} - {% endif %}{{ site.title }}">
|
|
84
|
+ <meta property="og:description" content="{{ description }}">
|
|
85
|
+ </head>
|
|
86
|
+ {% endraw %}{% endcodeblock %}
|