2010-07-06 64 views
0

我有一个多语种网站,我正在尝试使用paginator。然而,网页导航从未包括语言(只控制器和动作都包括在内)包括paginator链接中的语言

<?php 
echo $paginator->first(' << ', null, null, null); 
echo $paginator->prev(' < ', null, null, null); 
echo $paginator->numbers(); 
echo $paginator->next(' >', null, null, null); 
echo $paginator->last(' >> ', null, null, null); 
?> 

例如:URL - http://dev.cyclistsroadmap.com/eng/segments/

电流:http://dev.cyclistsroadmap.com/main/segments/page:5

应该http://dev.cyclistsroadmap.com/eng/main/segments/page:5

+0

不管分页url是不是语言工作好吗? 您使用的是i18n组件吗? – Leo 2010-07-06 15:51:29

+0

是的。例如http://dev.cyclistsroadmap.com/jpn/segments/ – paullb 2010-07-06 16:03:06

+0

它似乎工作正常。您是否有理由希望该语言出现在网址中? – Leo 2010-07-06 16:06:52

回答

0

检查this出。你可以用paginate-> options来设置额外的参数。

<?php 
$paginator->options(array('url'=>array('lang'=>'eng'))); 
?> 

然后像这样添加您的routes.php文件。然后,如果您在选项中添加参数(如上面的实况),那么它应该按照您的要求工作。

Router::connect('/:lang/:controller/:action/*', array(), array('lang' => 'eng/', 'property' => '[0-9]+')); 
+0

谢谢,但我已经看到并尝试过。这给了我 http://dev.cyclistsroadmap.com/main/segments/page:5/lang:eng – paullb 2010-07-07 00:02:55

+0

据我所见,你设法做到了:)或者至少分页有适当的lang变量 – 2010-07-07 06:24:09

+0

正如我上面写的,我在此期间完成了一项破解工作。我仍然希望最终做到这一点。 – paullb 2010-07-07 10:38:14

0

我得到这个工作的唯一方法是破解paginator库来添加lanuage。 (不幸的是,cakephp使这个如此不灵活)