Markdown-based blog engine that compiles to static html pages
Project description
django-staticblog is a markdown-based blog system for Django that compiles to static html.
Requirements
django-staticblog requires:
Python 2.6+
Django 1.4+
markdown
html2text
Installation
pip install django-staticblog
or
python setup.py install
after checking out the code from http://github.com/cgrice/django-staticblog
Add staticblog to your INSTALLED_APPS setting, and add
url(r'^preview/', include('staticblog.urls'))
to your urls.py
Configuration Options
STATICBLOG_ROOT - root directory of your django project
STATICBLOG_POST_DIRECTORY - full path to the directory which holds your blog posts in markdown format. Defaults to your STATICBLOG_ROOT + '/posts'
STATICBLOG_COMPILE_DIRECTORY - full path to the directory which will hold compiled post and archive html pages. Defaults to MEDIA_ROOT + '/posts'
STATICBLOG_STORAGE - Defines how staticblog stores images defined in blog posts. Defaults to DEFAULT_FILE_STORAGE.
Usage
To start using staticblog, write some posts in your STATICBLOG_POST_DIRECTORY. These posts should be formatted in markdown. Post filenames should contain alphanumeric characters and dashes only, and end with .post. For examples, please see the examples folder in this repository.
Each post can also contain metadata used for title tags and post information. For example:
Title: Look, I'm blogging! Summary: A concise summary of a post Author: John Doe Date: 2009-08-05 11:25:53 GMT
You can include remotely hosted images in your posts - these will automatically be downloaded and stored in the location defined by STATICBLOG_STORAGE.
To include local files, create a folder with the same name as your post file, minus the .post extension. You can then add image files to this folder, and reference them in your markdown like so:
![Alt Text](post-name/image.jpg)
Compiling Posts
To display your posts, you need to compile them. To do this, staticblog provides a management command named update_blog. By defult, this command will process all new blog posts, handle their images, and create a folder in your STATICBLOG_COMPILE_DIRECTORY with the post name, with an index.html file containing the blog post.
update_blog also creates a post listing, which it stores in an index.html file in your STATICBLOG_COMPILE_DIRECTORY.
update_blog takes two optional arguments:
--all - process all blog posts regardless of whether they already exist --name=POST,POST2 - process a list of blog posts by post name
Templates
staticblog provides two default templates - staticblog/post.html and staticblog/archive.html. You can overwrite these in your own template directory to integrate the posts with your site.
Template Variables
staticblog/post.html
post : a dict containing:
content : blog content in html format
title
date
author
summary
staticblog/archive.html
posts : a list of post dicts as defined in post.html above
Changelog
0.2.4 - 2012-10-16
URL for rendering posts is no longer hardcoded to ‘/preview’
Added view to handle github post-receives and render blog
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file django-staticblog-0.2.4.tar.gz
.
File metadata
- Download URL: django-staticblog-0.2.4.tar.gz
- Upload date:
- Size: 9.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e85d5e5489db33916cf96195dd17f21be4416bde80f273c40c884591a83ea90 |
|
MD5 | cea78b6c9bd3e8cdcda63a3c397f16af |
|
BLAKE2b-256 | 0674fe77985af2e173c95905ba40731d954a4c0843bf4febff9ffe0856b72bc6 |
File details
Details for the file django_staticblog-0.2.4-py2.6.egg
.
File metadata
- Download URL: django_staticblog-0.2.4-py2.6.egg
- Upload date:
- Size: 29.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e716cbb9dbaf0e7b6a240a901a453f0944b937c56c54d35a37caf78ed3b8e85 |
|
MD5 | 87215e62d7415d2b8980b0e24e899340 |
|
BLAKE2b-256 | 61f98f623f908039b62e51e62f40dd2a5fc587bfa9394237a5a3ba36da43a503 |