django-xblog
Blogging application for your Django site
Build Status
Installation
Install from PyPi:
pip install django-xblog
Using git:
mkdir blog_project
cd blog_project
virtualenv .
. bin/activate
git clone git@github.com:rubeon/django-xblog.git
cd django-xblog
python setup install
This will install xblog and its requirements.
Creating a Site
After the above, go through the usual process:
django-admin startproject mysite
cd mysite/
vi mysite/settings
Add the dependencies to INSTALLED_APPS:
INSTALLED_APPS = [
...
# following are for xblog
'django.contrib.sites',
'markdown_deux',
'xblog',
'django_xmlrpc_dx',
]
# Define a site, if not done already!
SITE_ID=1
MIDDLEWARE = [
# add sites middleware
# ...
'django.contrib.sites.middleware.CurrentSiteMiddleware',
]
./manage.py migrate
./manage.py createsuperuser --username=admin --email=admin@example.com
Password:
Password (again):
Superuser created successfully.
./manage.py runserver
URL Setup
Add a place to your site's root urls.py reach your blog, and don't forget to
add the xblog namespace:
from django.urls import path, include
import xblog.urls
urlpatterns = [
path('admin/', admin.site.urls),
path('blog/', include(xblog.urls, namespace="xblog"),
]
Creating users
XBlog uses the Django authentication framework to keep track of users. Users
are linked to Authors, which can serve as the User profile model.
Author profiles are created automatically in the User model's post_save
signal. See xblog/models.py:create_profile for reference.
Adding to your templates
XBlog defines the following content blocks:
-
maincontent- the main Blog content with archives, posts, etc. -
rightnav- Blog roll, archive links, etc. -
leftnav- navigation block including ...(FIXME: whut?) -
extrahead- adds meta tags depending on the content being shown:
<title>subcritical.org::{% block subpagetitle %}top{% endblock %}</title>
{% block extrahead %}{% endblock %}
subpagetitle- returns title of article or archive
<title>subcritical.org::{% block subpagetitle %}top{% endblock %}</title>
pagestyle- can be placed inbodytag for CSS styling:
<body class="{% block pagestyle}{% endblock %}">
-
<title>subcritical.org::{% block subpagetitle %}top{% endblock %}</title> {% block extrahead %}{% endblock %}blogheaders- Returns metadata about blog, such as EditURI, author, etc., for you HTML<head>section -
navigation- Can be pulled into your navigation block to allow blog-specific navigation elements:
<nav>
<ul>
<li>Top</li>
{% block navigation %}{% endblock %}
</ul>
</nav>
Metadata
Release files for django-xblog 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| django_xblog-0.3.1.tar.gz | 148.7 kB | With provenance | Details for django_xblog-0.3.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| django_xblog-0.3.1-py3-none-any.whl | Python 3 | none | any | Details for django_xblog-0.3.1-py3-none-any.whl |
Total release size: 339.7 kB
Release files / django_xblog-0.3.1.tar.gz
| Download URL | django_xblog-0.3.1.tar.gz |
|---|---|
| Size | 148.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
42ab119383a98e10fe14e60050e45123ab26a62d3a2c98edafcb14524fdf83dd
|
|
BLAKE2b-256 checksum How to use checksums |
13f684e076249d50c077ea915ce70cf67f00dbc2b6066a046cbf6396a9f65889
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 28, 2025.
Transparency logRelease files / django_xblog-0.3.1-py3-none-any.whl
| Download URL | django_xblog-0.3.1-py3-none-any.whl |
|---|---|
| Size | 191.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f34a7a6afb12ca845492aea10e9418865682ff16ad97890159224de39a33a462
|
|
BLAKE2b-256 checksum How to use checksums |
9099489cc2d969794b35ba6031dcc2aca7cccf328d55d504459104bc27ac1997
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 28, 2025.
Transparency logSecurity for django-xblog 0.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for django_xblog-0.3.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 28, 2025.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.