강좌게시판

제목 워드프레스와 codeigniter 접목(?)하기 2
글쓴이 한대승(불의회상) 작성시각 2013/04/02 21:33:21
댓글 : 20 추천 : 1 스크랩 : 0 조회수 : 34458   RSS
한대승(불의회상)
워드프레스 참 매력적인 CMS 입니다.

이전 부터 워드프레스(이하 WP)와 코드이그나이터(이하 CI)의 접목에 관심이 지대 했었습니다만 종지부는 웅파님이 찍어 주셨군요.

여러가지 가능성에 참 행복합니다.

웅파님의 방법은 아래 URL을 참조 하시면 됩니다.

여기 => http://cikorea.net/lecture/view/336/page/1

이 방법은 CI포럼 답게 CI가 메인이고 WP가 서브 입니다.

그런데....

WP가 메인 경우는 CI를 포기 해야 할까요?
WP가 사용된 홈페이지에 CI를 접목 시킬수는 없을까요?

물론 있습니다.

설명 들어 갑니다.
 

1. /var/www/html 이 기본 디렉토리(이미 WP가 설치되어 있음)라 하면 /var/www/html/ci(또는 님하 맘에 드는 폴더) 에 CI를 설치합니다.
http://localhost/ci 접속해보면 반가운 CI Welcome 화면이 나옵니다.

2. /var/www/html/ci  의 폴더에 .htaccess 파일을 생성하고 아래와 같이 입력 합니다.


RewriteEngine On

RewriteCond $1 !^(index\.php)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php/$1 [L]

3. /var/www/html/ci  폴더의 index.php 를 열어서 맨 하단에 다음과 같이 한줄을 삽입해줍니다.

/*
 * --------------------------------------------------------------------
 * LOAD THE BOOTSTRAP FILE
 * --------------------------------------------------------------------
 *
 * And away we go...
 *
 */
require_once '../wp-load.php'; // 상단에 설치된 워드프레스 경로
require_once BASEPATH.'core/CodeIgniter.php';

/* End of file index.php */
/* Location: ./index.php */

4. welcome 컨트롤러의 index 함수에 다음과 같이 입력하고 http://localhost/ci 또는  http://localhost/ci/welcome 에 접속을 해봅니다. 

function index()
 {
  get_header();
  echo "CodeIgniter!!!!";
  get_sidebar();
  get_footer();
 }

뭐 결과는... ^^
켭쳐뜨기 귀찮아서 웅파님 화면 빌려 왔습니다.





 

 다음글 초 간단 pagenation 제작방법 - 수정 (13)
 이전글 CodeIgniter 동영상 강의 (12)

댓글

인스카 / 2013/04/03 08:35:55 / 추천 0
웅파님의 캡쳐화면에서 피식! 하고 갑니다^^

그런데, 워드프레스 초기 설치 상태와 CI 초기 설치 상태에서, Profiler를 켜보니 CI는 메모리가 약 2MB 정도 사용하는데, 워드프레스까지 로드를 하니 16MB를 사용하더라고요. 원래 워드프레스가 이렇게 무거웠나요? ^^;; 실제 서비스에 적용을 해도 될지 테스트를 해봐야겠어요 ㅎㅎ
한대승(불의회상) / 2013/04/03 08:47:00 / 추천 0
인스카// 워드프레스가 상당히 무거워 보이긴 하군요.
실 서비스에서 많이 사용되고 있고, 종종 워드프레스 관련 문의도 들어 옵니다.

어떻게 활용하는지는 기획자와 개발자의 몫이라 생각합니다.
risa / 2013/04/03 09:26:37 / 추천 0
 저도 WP 에 대해서는 약간 회의적입니다

보기만 해도 무거워 보이거든요.

하지만 WP를 투입한 업체가 점점 많아 지는 추세로 보입니다.

그저 개인용 블로그를 간단히 만들자 라는 취지에서

잘 써서 실무에 반영 하려는 움직임이 없지 않아 있는것 같습니다.

실제 카페로 운영 하다가 WP로 바꾸는게 더 유기적이지 않은가?

라는 질문에 개발자들은 '그렇다' 라고 답 할것입니다.

그럼 WP로 만드는게 쉬운가?

라는 답에도 '그냥 만드는것 보단 비교적 간단하다.' 라는 답을 하게 될것이고

그럼 WP로 만들어 달라 

라는 요구로 변해가는게 아닐까? 시나리오를 써보았습니다.



한대승(불의회상) / 2013/04/03 09:37:54 / 추천 0
워드프레스에 별 관심이 없었는데..
접목이라는 이유로 뜯어 보고 있습니다.

셀수 없는 테마와 플러그인들 "와우!"
감탄사가 절로 나오는군요.

카페기능과 유사한 'Buddypress' 설치하여 이것저것 둘러 보고 있습니다.
이걸 수정해서 입맛에 맞게 해달라는 고객이 있다면 머리 지어 뜯으며 멘붕이 올거 같습니다만...

개인이 그럭저럭 사용하기엔 좋아 보이네요
니삼 / 2013/04/03 10:03:19 / 추천 0
워드프레스의 장점은 아무래도 많은 플러그인 아닐까요 ㅋㅋ
변종원(웅파) / 2013/04/03 10:20:39 / 추천 0
개발자 관점에서는 수많은 플러그인, 혼자서 개발, 디자인을 다 해야하는 상황에서는 수많은 테마와 플러그인,
무겁더라도 쓸 수밖에 없는 이유입니다.

일반 사용자입장에서도 수많은 테마와 플러그인은 매력적일 수밖에 없습니다.

제로보드 생각해보시면 답이..... ^^ (수많은 버그에 시달리면서도 썼던 분들이 많았죠)
티스토리도.... ^^ 

불상님 근데 조삼모사네요. ㅎㅎㅎㅎ
한대승(불의회상) / 2013/04/03 11:56:53 / 추천 0
웅파// ㅎㅎㅎ 네.. 웅파님 글보고 주어먹었습니다. ^^
꾸숑 / 2013/04/03 20:24:28 / 추천 0
불의회상// 좋은 강좌 감합니다.
홍구2 / 2013/04/08 21:08:34 / 추천 0
 한 가지 질문이 있는데요ㅎ
마지막 ci 컨트를러 부분에서 view를 호출하는 것을 결합하려면 어떻게 해야할까요?
get_header();
echo $this->load->view('welcome_message', array(), TRUE);
get_footer();

위와 같이하면 되긴 하는데요, 먼가 더 깔끔한 방법 없을까요?
펠렌 / 2013/04/09 14:00:15 / 추천 0
WP, CI를 알려주신 팁으로 적용했으나.. URI 라우팅이 작동하지 않습니다.
WP 도 URI 안되고 CI 도 안되네요..

혹시 아파치 사이트 설정에서 뭔가 건드려야 할게 있을까요?
우분투 11.04 에서 apache2 설치한 상태입니다.

덧) /ci/index.php/Controller/Method/ 는 잘 됩니다 ㅜㅜ
한대승(불의회상) / 2013/04/09 14:22:29 / 추천 0
mod_rewrite 모듈이 설치되어 있는지 확인해 보세요.
한대승(불의회상) / 2013/04/09 14:49:32 / 추천 0
홍구// 뷰에 직접 기술해도 됩니다.

컨트롤러

echo $this->load->view('welcome_message', array(), TRUE);

<?php get_header();?>

Hello World!

<?pp get_footer();?>


펠렌 / 2013/04/10 14:34:29 / 추천 0
 불의회상 // 해결 했습니다. 원인은 아파치 설치하면 defulat 셋팅이었고 버추어 호스트 설정된걸 지워버리고 새로 생성해서 디렉토리 옵션을 조정하니 .htaccess 가 잘 작동하네요 ^^
꾸숑 / 2013/04/26 08:16:46 / 추천 0
불의회상//
공부꺼리 또 생겼네요 ㅎㅎㅎ
머리가 두세개 있었으면 좋겠는데...
현실은 거시기 하네요 ㅋ

좋은 정보 감사합니다.
이베리트 / 2013/07/08 18:56:18 / 추천 0
 접목 시킨다는게 커스텀마이징한다는 말씀이신가요???