2011-09-19 7 views
3

그래서보기> 페이지 폴더에 몇 개의 정적 페이지를 만들었습니다. 그들은 contact.ctp와 privacy.ctp입니다. 내가 함께 바닥 글에 그들을 연결 이제컨트롤러를 추가하지 않고 CakePHP에서 정적 페이지로 연결

Router::connect('/contact', array('controller' => 'pages', 'action' => 'display', 'contact')); 

    Router::connect('/privacy', array('controller' => 'pages', 'action' => 'display', 'privacy')); 

, : 그들은 domain.com/contact 및 domain.com/privacy로 이동하여 볼 수 있도록 내 routes.php, 나는 그것을 만든

<li><?= $this->Html->link('Contact', array('controller' => 'pages', 'action' => 'display', 'contact')); ?></a></li> 

    <li><?= $this->Html->link('Privacy', array('controller' => 'pages', 'action' => 'display', 'privacy')); ?></a></li> 

domain.com/ 페이지/terms으로 연결됩니다. 어떻게 즉하지 않고 (절대 URL을 부여하지 않고 페이지 컨트롤러를 추가을 중지 할 수 있습니다 <?= $this->Html->link('Contact', 'http://www.domain.com/contact'); ?> 또는입니다 만 다른 방법

+0

코드가 제대로 작동하지 않는 이유가없는 것 같습니다 (Cake 1.3은 사용자가 원하는 것을 얻기 위해 리버스 라우팅을 사용함). 핵심 중 하나를 수정 했습니까? edit - cake는 API에서 다음 예제를 제공한다 : Router :: connect ('/ home-page', array ('controller'=> 'pages', 'action'=> 'display', 'home')); '그래서 당신 코드가 괜찮은 것 같아 – Ross

답변

3

당신 아마 Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display')); 후이 노선은 그냥 그 순서를 반대로하고 작업을해야했습니다.

+0

오, 그래! Cake와 함께 배우는 것은 복잡한 일이지만, 배울수록 사랑합니다. 정말 고맙습니다! –

0

를 사용하여 실제 링크

<a href ="/contact">Contact</a> 

그리고 :?

<a href ="/privacy">Privacy</a> 

짧고 달콤한^_^

1

ROUTE

Router::connect('/*', array('controller' => 'pages', 'action' => 'display')); 

VIEW

echo $this->Html->link('Target', $this->Html->url(array('controller'=>'pages', 'action'=>'display', 'target', 'ext'=>'html'))); 

OUPUT SE의 후손을 위해

<a href="target.html">Target</a> 
0

, 그리고 간결을 위해, 당신은 Router::url()를 사용할 수 있습니다.

<li><a href="<?php echo Router::url('/contact'); ?>">Contact</a></li> 
관련 문제