base_helper.tmpl 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. ## -*- coding: utf-8 -*-
  2. <%def name="html_headstart()">
  3. <!DOCTYPE html>
  4. <html \
  5. prefix='\
  6. %if use_open_graph or (twitter_card and twitter_card['use_twitter_cards']):
  7. og: http://ogp.me/ns# article: http://ogp.me/ns/article# \
  8. %endif
  9. %if comment_system == 'facebook':
  10. fb: http://ogp.me/ns/fb#
  11. %endif
  12. ' \
  13. %if use_open_graph or (twitter_card and twitter_card['use_twitter_cards']):
  14. vocab="http://ogp.me/ns" \
  15. %endif
  16. % if is_rtl:
  17. dir="rtl" \
  18. % endif
  19. \
  20. lang="${lang}">
  21. <head>
  22. <meta charset="utf-8">
  23. %if description:
  24. <meta name="description" content="${description}">
  25. %endif
  26. <meta name="viewport" content="width=device-width">
  27. <title>${title|striphtml} | ${blog_title|striphtml}</title>
  28. ${html_stylesheets()}
  29. ${html_feedlinks()}
  30. %if permalink:
  31. <link rel="canonical" href="${abs_link(permalink)}">
  32. %endif
  33. %if favicons:
  34. %for name, file, size in favicons:
  35. <link rel="${name}" href="${file}" sizes="${size}"/>
  36. %endfor
  37. %endif
  38. % if comment_system == 'facebook':
  39. <meta property="fb:app_id" content="${comment_system_id}">
  40. % endif
  41. %if prevlink:
  42. <link rel="prev" href="${prevlink}" type="text/html">
  43. %endif
  44. %if nextlink:
  45. <link rel="next" href="${nextlink}" type="text/html">
  46. %endif
  47. <script type="text/javascript" src="//use.typekit.net/iwm5axp.js"></script>
  48. <script type="text/javascript">try{Typekit.load();}catch(e){}</script>
  49. ${mathjax_config}
  50. %if use_cdn:
  51. <!--[if lt IE 9]><script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
  52. %else:
  53. <!--[if lt IE 9]><script src="${url_replacer(permalink, '/assets/js/html5.js', lang)}"></script><![endif]-->
  54. %endif
  55. ${extra_head_data}
  56. </%def>
  57. <%def name="late_load_js()">
  58. ${social_buttons_code}
  59. </%def>
  60. <%def name="html_stylesheets()">
  61. %if use_bundles:
  62. %if use_cdn:
  63. <link href="/assets/css/all.css" rel="stylesheet" type="text/css">
  64. %else:
  65. <link href="/assets/css/all-nocdn.css" rel="stylesheet" type="text/css">
  66. %endif
  67. %else:
  68. <link href="/assets/css/rst.css" rel="stylesheet" type="text/css">
  69. <link href="/assets/css/code.css" rel="stylesheet" type="text/css">
  70. <link href="/assets/css/theme.css" rel="stylesheet" type="text/css">
  71. %if has_custom_css:
  72. <link href="/assets/css/custom.css" rel="stylesheet" type="text/css">
  73. %endif
  74. %endif
  75. </%def>
  76. <%def name="html_feedlinks()">
  77. %if rss_link:
  78. ${rss_link}
  79. %elif generate_rss:
  80. %if len(translations) > 1:
  81. %for language in translations:
  82. <link rel="alternate" type="application/rss+xml" title="RSS (${language})" href="${_link('rss', None, language)}">
  83. %endfor
  84. %else:
  85. <link rel="alternate" type="application/rss+xml" title="RSS" href="${_link('rss', None)}">
  86. %endif
  87. %endif
  88. </%def>
  89. <%def name="html_translations()">
  90. <ul class="translations">
  91. %for langname in translations.keys():
  92. %if langname != lang:
  93. <li><a href="${_link("index", None, langname)}" rel="alternate" hreflang="${langname}">${messages("LANGUAGE", langname)}</a></li>
  94. %endif
  95. %endfor
  96. </ul>
  97. </%def>