gpt4 book ai didi

php - 如何修改 zii.widgets.CBreadcrumbs 自动生成的 html?

转载 作者:行者123 更新时间:2023-12-01 15:58:49 27 4
gpt4 key购买 nike

我需要修改 Yii 框架小部件- zii.widgets.CBreadcrumbs。默认打印:

<div class="breadcrumbs">
<a href="/dr/dr/public_html/">Home</a> » <span>News</span></div>

但我需要:

<ul class="menu">
<li><a href="/dr/dr/public_html/">Home</a></li>
<li>News</li>
</ul>

那我怎么改呢?

最佳答案

  1. 如果您使用的是最新版本的Yii (1.1.11) ,然后您在 CBreadcrumbs 中有一些选项,即:activeLinkTemplateinactiveLinkTemplate并使用这些(以及 tagName )您可以轻松实现您的要求。

    您只需在包含面包屑小部件的文件中为这些选项添加值,默认情况下,它位于布局文件中:protected/views/layouts/main.php,像这样:

    <?php if(isset($this->breadcrumbs)):?>
    <?php $this->widget('zii.widgets.CBreadcrumbs', array(
    'links'=>$this->breadcrumbs,

    'tagName'=>'ul', // will change the container to ul
    'activeLinkTemplate'=>'<li><a href="{url}">{label}</a></li>', // will generate the clickable breadcrumb links
    'inactiveLinkTemplate'=>'<li>{label}</li>', // will generate the current page url : <li>News</li>
    'homeLink'=>'<li><a href="'.Yii::app()->homeUrl.'">Home</a></li>' // will generate your homeurl item : <li><a href="/dr/dr/public_html/">Home</a></li>
    )); ?><!-- breadcrumbs -->
    <?php endif?>

    'activeLinkTemplate'为事件/可点击链接生成链接,以及'inactiveLinkTemplate'生成不可点击且没有 url 的当前 url。

    {url}{label}是每个 View 的面包屑对象提供的 urllabel 值。例如:-

    // in some view.php file, you'll see this
    $this->breadcrumbs=array( // array is label=>url
    'Label1'=>array('route1'),
    'Label2'=>array('route2'),
    'Label3',
    );
  2. 如果您使用的是 1.1.11 之前的版本,那么您必须 extend CBreadcrumbs 类并修改 run()输出面包屑的方法,包含在 <li> 中.一旦您看到现有的 run()方法,您会很清楚如何去做。

编辑:

错过了如何添加 css 类。您可以通过在该小部件的 htmlOptions 数组中添加一个类键值来完成此操作:

<?php $this->widget('zii.widgets.CBreadcrumbs', array(
'links'=>$this->breadcrumbs,

'tagName'=>'ul', // will change the container to ul
'htmlOptions'=>array('class'=>'menu'),
// ... rest of the code ...
)); ?><!-- breadcrumbs -->

关于php - 如何修改 zii.widgets.CBreadcrumbs 自动生成的 html?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11886211/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com