한국형 라라벨 게시판 - Laravel Board
ver 8.4.x
8.4.x 부터는 install 방식을 artisan 명령어로 변경하여 좀더 간단하게 처리하였습니다.
또한 회원관리 패키지(wangta69/laravel-auth) 도 함께 설치됨으로서 간단한 홈페이지 기능까지 가능하도록 설계하였습니다.
1. Installation
1.1 패키지 설치
composer require wangta69/laravel-board
1.2 Install
패키지가 설치되면 console에서 아래와 같이 입력하면 모든 세팅이 마무리 됩니다.
php artisan pondol:install-bbs // 회원관련 프로그램(auth) 도 같이 설치
php artisan pondol:install-bbs only // bbs 만 설치(auth 를 사용하지 않는 경우)
2. config 설정
설치가 마무리되면 config/pondol-bbs.php 파일에서 route_admin 쪽 권한을 변경하여야 합니다.
wangta69/laravel-auth 가 함께 설치된 경우라면 이 부분은 패스해도 좋으나 만약 회원관리를 별도로 하고 있다면 아래와 같이 변경하여야 합니다.
'route_admin' => [
..........
'middleware' => ['web', 'admin'] // 여기서 admin 을 삭제하시고 여러분이 사용하는 관리자 권한을 넣어 주시기 바랍니다.
],
3. 사용자 Template
세팅이 마무리되면 resources/views/bbs/templates 이하로 두개의 폴더가 생깁니다.
- admin : 관리자용 탬플릿
- user : 사용자(프론트)용 탬플릿
- resources
- views
- bbs
- templates
- admin (관리자용 탬플릿)
- user (유저용 탬플릿)
Laravel Board는 관리자용 및 회원용의 탬플릿을 분리하여 제공하고 있으며 관리자단에서 각각의 탬플릿(skin)을 설정하실 수 있습니다.
3.1 샘플 탬플릿
기본으로 제공하는 탬플릿은 아래와 같습니다.
- basic : 일반적인 게시판
- basic-faq : 자주하는 질문용 게시판
- basic-gallery : 겔러리용 게시판
- basic-notice: 공지사항용 게시판
- basic-qna: 질문과 답변용 게시판
3.1 사용자 탬플릿 추가하기
원하시는 유형의 탬플릿 폴더를 선택, 복사, 새로운 폴더명으로 변경하여 동일위치 (resources/views/bbs/templates/admin or user)에 올리시면 됩니다.
매 install 마다 기존 template들은 overwrite되므로 만약 수정하여 사용하실 예정이라면 반드시 새이름으로 변경하여 작업해 주시기를 추천드립니다.
관리자
pondol-bbs.php 파일에서 middleware 부분을 적절하게 수정하셨다면 브라우저상에서 bbs/admin을 입력하면 관리자단으로 접근 가능합니다.
https://yourdomain/bbs/admin
비어있는 게시판 리스트를 볼 수 있는데 새로운 게시판을 "create" 하겠습니다.
- 게시판 이름 : 현재 게시판의 이름
- DB 테이블 : 게시판 고유 값(되도록이면 영문으로 작성)
- 게시판 스킨 : 게시판 스킨은 관리자와 회원용으로 분리되어 있으며 각각 설정해 주셔야 합니다. 게시판 스킨에 대해서는 아래에 좀더 자세히 설명하도록 하겠습니다.
- Blade Extends : 라라벨 블레이드에서 extends 롤 사용할 부분입니다.'@extends($cfg->extends)'
간단한 게시판이 생성되었습니다.
게시판 리스트에서 'view'를 클릭하시면 각각의 게시판에 대한 게시물을 핸들링(쓰기, 보기, 수정, 삭제)이 가능합니다.
Front에서 게시판 보기
프론트에서 게시판을 볼경우는 아래와 같이 링크를 사용하시면 됩니다.
https://YourDomain/bbs/[DB 테이블]
https://YourDomain.com/bbs/notice
bbs 관리자 디자인 변경
/bbs/admin 로그인 후 관리자용 환경 설정 > 관리자용 Blade Extends 를 현재 사용하시는 관리자 template의 extens 로 교체하시면 동일한 화면이 디스플레이 됩니다.
Requires
wangta69/laravel-board 설치시 함께 설치되는 대표적인 패키지들입니다.
- wangta69/laravel-auth: 회원관리용 패키지(회원관련 상세설명요구시 이쪽 문서 참조 바랍니다.)
- wangta69/laravel-editor: Editor용 패키지(Editor 변경을 원할 경우 이쪽 문서 참조 바랍니다.)
아래 질문과 답글 란에 궁금한 점 올려주시면 답변 드리도록 하겠습니다.