Django korean style simplest CMS
Project description
Django-Page
Django - Korean Style, Wordpress-like, Simplest, CMS (Content Management System)
한.국.형. ㅋ
- 문서 정리 중 -
Features
- page code 기반 자동 url 매칭
- ckeditor 기반 admin 제공
- 기타등등
의존성
- Django (2.0+ 만 테스트)
- django-ckeditor
- easy-thumbnails
권장 설치
- django-revision
- django-revision-compare
- django-bootstrap4
설치
0. pip install
pip install django-page
1. app setup
INSTALL_APPS에 'page'추가
INSTALLED_APPS = [
...
'page',
...
2. URL setup
메인 urls.py 파일 제일 하단에 page.urls 추가
urlpatterns = [
path('ckeditor/', include('ckeditor_uploader.urls')),
...
path('admin/', admin.site.urls),
...
path('', include('page.urls')),
]
3. Custumize Template
templates/page/base.html 를 오버라이드해서 현 사이트 스타일과 일치하게 변경한다 필수적으로 필요한 블럭명은 css, leader, content, title, subtitle, bgimage 이다
아래는 base.html 템플릿 예시
<html lang="ko">
<head>
<title>{{ site.name }}</title>
{% block css %}
{% endblock %}
</head>
<body class="st-container st-effect-3">
<div class="wrapper">
{% block leader %}
<h1>{% block title %}Title{% endblock %}</h1>
<p>{% block subtitle %}Subtitle{% endblock %}</p>
{% endblock %}
{% block content %}
{% endblock %}
</div>
</body>
</html>
Page Code
영문으로 된 slug 타입 문자열로 바로 URL로 대응 된다.
예를 들어 페이지 코드가 'test'인 경우 '/test' url로 연결시 표출된다. 따라서 admin등 다른 앱과 충돌이 되는 코드는 사용 하지말것!
Build-in page code
페이지 코드 'home'의 경우 루트 URL ('/')에 대해 예약 되어 있다.
Shortcode
등록된 키워드를 django template tag로 변환, 해석 해준다
사용법
page 컨텐츠 상에 다음과 같이 추가
[커맨드 매개변수1 매개변수2...]
Build-in 명령어
- 페이지 넣기
- 매개변수 : 페이지 코드 또는 페이지 ID
- 등록된 페이지 내용을 컨텐츠 중간에 삽입
- 반복 문구 넣기
- 매개변수 : 반복문구 코드 또는 반목문구 ID
- 등록된 반복 사용 문구를 컨텐츠 중간에 삽입
- 포함하기 = 가져오기
- include
커스텀 명령어 추가
- 커스텀 명령어 선언 settings.py 상에 다음과 같이 선언
PAGE_SHORTCODES = {
"연락처넣기": "contact",
"다운로드항목": "download",
"보기": "view",
}
- 파라메터 니모닉 선언 편의를 위해서 첫번째 매개변수는 복잡한 내용으로 맵핑 가능
PAGE_TARGET_MAP = {
"공지사항": "widget/notice.html",
"FAQ": "widget/faq.html",
}
ex> [보기 공지사항] 의 경우 {% view "widget/notice.html" %} 으로 변환됨.
- load 할 모듈 추가 커스텀 테그를 추가하기 위해서 사용 될 templatetags 모듈을 추가. 모든 shortcode 실행 시점 상단에서 load 됨
PAGE_UNPACK_WITH = (
'home',
'contact_info',
)
다음과 같이 상단에 포함됨
{% load home %}
{% load contact_info %}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
django-page-0.0.7.tar.gz
(35.6 kB
view hashes)
Built Distribution
Close
Hashes for django_page-0.0.7-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c1c71a48ffa22eaad6e1def0ff808b82fbb38a79a0fd01abbb991d0475157b1 |
|
MD5 | 823337dd284bf9887bdea8b62239f8d0 |
|
BLAKE2b-256 | b73a27a5ecdd80791e83c1beb5735225b8df4653df15f0025ee23b1e06e5fd0b |