rrd108 / cakephp-menulink
CakePHP 的 MenuLink 插件
1.2.0
2019-09-28 17:22 UTC
Requires
- cakephp/cakephp: ^3.0
Requires (Dev)
- phpunit/phpunit: ^5.7|^6.0
This package is auto-updated.
Last update: 2024-08-29 04:14:41 UTC
README
这是一个实用且非常简单的插件,用于根据 URL 显示活动菜单项。如果您有一个指向当前 URL 的链接,它将获得一个 "active" CSS 类。您应该在您的 CSS 文件中添加自己的 a.active
CSS 定义。
安装
您可以使用 composer 将此插件安装到您的 CakePHP 应用程序中。
安装 composer 包的推荐方法是
composer require rrd108/cakephp-menulink
用法
加载插件
在您的 /config/bootstrap.php
文件中加载插件
Plugin::load('MenuLink');
加载和使用助手
您可以通过两种不同的方式加载助手:推荐方式或覆盖方式。
推荐方式
在您的 /src/View/AppView.php
文件中的 initialize()
方法中加载助手,如下所示。
$this->loadHelper('MenuLink.MenuLink');
在这种情况下,在您的视图文件中,您应使用助手如下所示。
$this->MenuLink->menuLink( 'Link text', [ 'controller' => 'posts', 'action' => 'index' ], [$options] );
menuLink 调用处理与核心 Html 助手的 link 方法 相同的参数。
覆盖 Html 助手
这是一种更舒适的方式来执行上述操作。由于这种方式覆盖了核心 Html 助手,它可能会与其他试图覆盖同一内容的助手冲突。
在您的 /src/View/AppView.php
文件中的 initialize()
方法中加载助手,如下所示。
$this->loadHelper('Html', ['className' => 'MenuLink.MenuLink']);
在这种情况下,在您的视图文件中,您应使用助手如下所示。
$this->Html->menuLink( 'Link text', [ 'controller' => 'posts', 'action' => 'index' ], [$options] );
menuLink 调用处理与核心 Html 助手的 link 方法 相同的参数。
在这两种方式中,您的活动链接看起来都像这样,但其他链接不会有这个 CSS 类定义。
<a href="/posts/index" class="active">Link text</a>