<commit_before>==================
Django Blog Zinnia
==================

Simple but powerfull application for managing a blogs into your Django website.

.. contents::

Features
========

More than a long speech, here the list of the main features :

  * Comments
  * RSS Feeds
  * Search engine
  * Archives views
  * Tags and categories views
  * Widgets (Popular entries, Recent entries, ...)
  * Spam protection with Akismet
  * Support Gravatar
  * Collaborative work
  * Prepublication

Dependancies
============

Before installing Zinnia make sure that you already have installed this packages

 * akismet
 * django-tagging

Installation
============

You could retrieve the last sources from http://github.com/Fantomas42/django-blog-zinnia and running the installation script ::
    
  $> python setup.py install

or use pip ::

  $> pip install -e git://github.com/Fantomas42/django-blog-zinnia.git#egg=django-blog-zinnia

Applications
------------

Then register **zinnia**, **django.contrib.admin**, **django.contrib.comments** and **tagging** in the INSTALLED_APPS section of your project's settings. ::

  >>> INSTALLED_APPS = (
  ...   # Your favorites apps
  ...   'django.contrib.comments',
  ...   'django.contrib.admin',
  ...   'tagging',
  ...   'zinnia',)

Urls
----

In your project urls.py adding this following lines to include the zinnia's urls for serving the blog. ::

  >>> url(r'^weblog/', include('zinnia.urls')),
  >>> url(r'^comments/', include('django.contrib.comments.urls')),


Note the zinnia urlset is provided for convenient usage, but you can do something like that if you want to customize your urls : ::

  >>> url(r'^weblog/feeds/', include('zinnia.urls.feeds')),
  >>> url(r'^weblog/authors/', include('zinnia.urls.authors')),
  >>> url(r'^weblog/categories/', include('zinnia.urls.categories')),
  >>> url(r'^weblog/search/', include('zinnia.urls.search')),
  >>> url(r'^weblog/', include('zinnia.urls.entries')),
  >>> url(r'^comments/', include('django.contrib.comments.urls')),


Synchronization
---------------

Now you can run a *syncdb* for installing the models into your database.
<commit_msg>adding sitemap implementation and example list<commit_after>==================
Django Blog Zinnia
==================

Simple but powerfull application for managing a blogs into your Django website.

.. contents::

Features
========

More than a long speech, here the list of the main features :

  * Comments
  * RSS Feeds
  * Search engine
  * Sitemap
  * Archives views
  * Tags and categories views
  * Widgets (Popular entries, Recent entries, ...)
  * Spam protection with Akismet
  * Support Gravatar
  * Collaborative work
  * Prepublication

Dependancies
============

Before installing Zinnia make sure that you already have installed this packages

 * akismet
 * django-tagging

Installation
============

You could retrieve the last sources from http://github.com/Fantomas42/django-blog-zinnia and running the installation script ::
    
  $> python setup.py install

or use pip ::

  $> pip install -e git://github.com/Fantomas42/django-blog-zinnia.git#egg=django-blog-zinnia

Applications
------------

Then register **zinnia**, **django.contrib.admin**, **django.contrib.comments** and **tagging** in the INSTALLED_APPS section of your project's settings. ::

  >>> INSTALLED_APPS = (
  ...   # Your favorites apps
  ...   'django.contrib.comments',
  ...   'django.contrib.admin',
  ...   'tagging',
  ...   'zinnia',)

Urls
----

In your project's urls.py adding this following lines to include the zinnia's urls for serving the blog. ::

  >>> url(r'^weblog/', include('zinnia.urls')),
  >>> url(r'^comments/', include('django.contrib.comments.urls')),


Note the zinnia urlset is provided for convenient usage, but you can do something like that if you want to customize your urls : ::

  >>> url(r'^weblog/feeds/', include('zinnia.urls.feeds')),
  >>> url(r'^weblog/authors/', include('zinnia.urls.authors')),
  >>> url(r'^weblog/categories/', include('zinnia.urls.categories')),
  >>> url(r'^weblog/search/', include('zinnia.urls.search')),
  >>> url(r'^weblog/', include('zinnia.urls.entries')),
  >>> url(r'^comments/', include('django.contrib.comments.urls')),

Sitemap
-------

One of the cool features of Django is the sitemap application, 
so if you want to fill your website's sitemap with the entries of your blog, follow this procedure.

  * Register **django.contrib.sitemaps** in the INSTALLED_APPS section.
  * Edit your project's urls to add this code :

::

  >>> from zinnia.sitemaps import TagSitemap
  >>> from zinnia.sitemaps import EntrySitemap
  >>> from zinnia.sitemaps import CategorySitemap
  >>> from zinnia.sitemaps import AuthorSitemap
  >>> 
  >>> sitemaps = {'tags': TagSitemap,
  ...             'blog': EntrySitemap,
  ...             'authors': AuthorSitemap,
  ...             'categories': CategorySitemap,}
  ...
  >>> urlpatterns += patterns('django.contrib.sitemaps.views',
  ... 	                      (r'^sitemap.xml$', 'index',
  ...                          {'sitemaps': sitemaps}),
  ...                         (r'^sitemap-(?P<section>.+)\.xml$', 'sitemap',
  ...                          {'sitemaps': sitemaps}),
  ...			      )


Synchronization
---------------

Now you can run a *syncdb* for installing the models into your database.


Examples
========

  * `Fantomas' side
    <http://fantomas.willbreak.it>`_.

If you used Zinnia and liked it, don't hesitate to send me the url of your website, it will be added to the list.

{'fraction_non_alphanumeric': 0.16753926701570682, 'fraction_numerical': 0.0014443040259974724, 'mean_word_length': 3.338292873923258, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 84, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5338508', 'n_tokens_mistral': 1758, 'n_tokens_neox': 1684, 'n_words': 491}