CakePHP: Linki absolutne
Opublikowano 2011-08-26 21:46:20 CakePHP HtmlHelper
Ostatnio napotkałem problem tworzenia linków w mailu wysyłanym z sekcji administratorskiej aplikacji napisanej w CakePHP. Linki tworzyłem za pomocą metody link w HtmlHelper.
echo $this->Html->link('Link'
array(
'controller'=>'contents'
,'action'=>'view'
,'slug'=>'my-custom-slug'
)
);
Tak utworzony link tworzony jest z prefixem 'admin'; jakoże został utworzony z poziomu sekcji admin, która jest uzyskana za pomocą takiego prefixu. Pozbywamy się prefixu podająć w tablicy drugiego parametru element o kluczu takim jak nazwa prefixu, a w wartości prefixu FALSE. Zaleca się aby w każdym tworzonym linku anuluwać nieużywane, a zdefiniowane prefixy. Dla przypomnienia prefixy te zdefiniowane są w pliku app/config/routes.php.
echo $this->Html->link('Link'
array(
'controller'=>'contents'
,'action'=>'view'
,'slug'=>'my-custom-slug'
,'admin'=>FALSE
)
);
Teraz wystarczy tylko uzyskać link absolutny, czyli zaczynający się od http://tomaszmazur.eu/ zamiast standardowego /. W tablicy drugiego parametru tworzymy element o kluczu full_base i wartości TRUE.
echo $this->Html->link('Link'
array(
'controller'=>'contents'
,'action'=>'view'
,'slug'=>'my-custom-slug'
,'admin'=>FALSE
,'full_base'=>TRUE
)
);