【问题标题】:Images as pagination links in cakephp 2.x图像作为 cakephp 2.x 中的分页链接
【发布时间】:2014-02-15 22:46:30
【问题描述】:

我有一个使用 cakePHP 进行自定义编码的画廊。目前,我正在尝试让下一页和上一页的分页链接显示为图像。链接完美地作为文本工作。为了将它们输出为简单文本,我使用以下代码:

<?php   
echo $this->Paginator->prev();
echo $this->Paginator->next();      
?>

但是,这会将链接输出为分别显示&lt;&lt; PreviousNext &gt;&gt; 的文本。我想用我拥有的图像替换所述输出。我环顾四周,发现了一些替换图像文本的东西:

echo $this->paginator->prev($this->html->image('/images/icon_prev.png'), array('escape' => false));

但是,它似乎断开了链接:虽然标准上一个/下一个按钮的链接如下:

http://galleryurlhere/albums/view/7/page:2

新的图片链接将它们输出为:

http://galleryurlhere/albums/view/page:2

因此未能将专辑 ID 作为变量发送,从而破坏了分页。谁能帮我这个?我试过用变量重载函数(我可以从代码中访问),但这似乎不起作用。任何线索我做错了什么?

【问题讨论】:

  • 你的具体版本是什么?

标签: php cakephp pagination cakephp-2.0 cakephp-2.3


【解决方案1】:

这没有多大意义,但问题在于你如何调用 Helper。

这不能正常工作

echo $this->paginator->prev( $this->html->image('/images/icon_prev.png'), array('escape' => false) );

虽然这样做:(注意大写“P”)

echo $this->Paginator->prev( $this->html->image('/images/icon_prev.png'), array('escape' => false) );

更多详情

似乎$this-&gt;Paginator$this-&gt;paginator (spl_object_hash()) 的对象相同。同样,我会使用 $this-&gt;Html 而不是 $this-&gt;html 作为我的 Html Helper。

【讨论】:

  • 这一定是我被困在一个项目上的最愚蠢的原因。另外,我最讨厌 cakePHP 的主要一点就是它如何愉快地故意使用大写和复数来表示类和对象,从而导致混淆。我已经测试了您的建议,并且确实有效。向您致敬,先生!
猜你喜欢
  • 1970-01-01
  • 2013-05-17
  • 2020-01-23
  • 1970-01-01
  • 2012-11-26
  • 2013-09-06
  • 1970-01-01
  • 1970-01-01
  • 2012-10-06
相关资源
最近更新 更多