2012-05-14 2 views
0

내 텍스트에이 텍스트에 본문이 있습니다. [갤러리 = 2]와 같은 짧은 코드를 넣었습니다. 이제 텍스트 (갤러리와 2)에서 2 개의 인수를 찾을 수 있습니다. 내보기 기능 (갤러리)과이 같은 요소 (갤러리 ID = 2)를 호출한다 :Cakephp 짧은 코드 동적으로 함수와 요소 호출

응용 프로그램 /보기/글/index.ctp가

findshortcode($posts[Post][Body]); // this function find short code and call his name like gallery(2) 

//my problem is : 

function gallery($id = null){ 
    $this->element('gallery', array('galleryid' => $id), array('plugin' => 'gallerys')); 
} 

답변

0

당신은 무엇을 위해 존재하지 않습니다 당신이 그것을하는 것을 설명하는 방식은 Cakish 또는 MVC 방식의 일이 아닙니다. 그러나 나는 당신의 질문을 받고 당신이 그것을하고 싶은대로 당신에게 설명 할 것입니다.

당신이해야 할 것은 내가 생각하기에, 많은 thaks

class PostsController extends AppController { 

var $shortCodeTypes = array('gallery'); 

function view($id){ 
    $post = $this->Post->find(null, $id); 
    $post = $this->_insertShortCodes($post); 
    $this->set(compact('post')); 
} 

function _insertShortCodes($post){ 

    foreach($this->shortCodeTypes as $shortCodeType){ 
     // Do logic to find shortcodes and insert data into post body 
    } 
    return $post 
} 
+0

...이 ... 다음 표시보기에 모든 완성 된 변수를 보낼 ... 컨트롤러 내부에서 모든 논리를 수행하다 당신의 대답은 사실입니다, 나는 MVC 방식으로 내 프로그래밍 논리에서 실수를했다. – ali786