0

我对一些凌乱的代码没有什么问题,我认为它可以更好,我使用分页类来显示页面,唯一的问题是我想设置不同的样式?现在我的控制器中有一些功能?

public function products 
{

        $config["per_page"] = 4;
        $config["uri_segment"] = 2;
        $config['cur_tag_open'] = '<li><span class="page active">';
        $config['cur_tag_close'] = '</span></li>';
        $config['num_tag_open'] = '<li class="page gradient">';
        $config['num_tag_close'] = '</li>';
        $config['prev_link'] = '&lt; prev';
        $config['prev_tag_open'] = ' <li class="page gradient">';
        $config['prev_tag_close'] = '</li>';
        $config['next_link'] = 'next &gt;';
        $config['next_tag_open'] = '<li class="page gradient">';
        $config['next_tag_close'] = '</li>'
}

和其他再次相同

public function milks
{

        $config["per_page"] = 4;
        $config["uri_segment"] = 2;
        $config['cur_tag_open'] = '<li><span class="page active">';
        $config['cur_tag_close'] = '</span></li>';
        $config['num_tag_open'] = '<li class="page gradient">';
        $config['num_tag_close'] = '</li>';
        $config['prev_link'] = '&lt; prev';
        $config['prev_tag_open'] = ' <li class="page gradient">';
        $config['prev_tag_close'] = '</li>';
        $config['next_link'] = 'next &gt;';
        $config['next_tag_open'] = '<li class="page gradient">';
        $config['next_tag_close'] = '</li>'
}

你看有没有一样的?但是我使用它两次,每次我有分页我必须把配置放在那个函数中,是否有可能以全局方式设置它

    function __construct()
    {

        $config["per_page"] = 4;
        $config["uri_segment"] = 2;
        $config['cur_tag_open'] = '<li><span class="page active">';
        $config['cur_tag_close'] = '</span></li>';
        $config['num_tag_open'] = '<li class="page gradient">';
        $config['num_tag_close'] = '</li>';
        $config['prev_link'] = '&lt; prev';
        $config['prev_tag_open'] = ' <li class="page gradient">';
        $config['prev_tag_close'] = '</li>';
        $config['next_link'] = 'next &gt;';
        $config['next_tag_open'] = '<li class="page gradient">';
        $config['next_tag_close'] = '</li>';
}

我在我的应用程序中使用的所有其他分页都使用相同的样式,而不是逐个功能地重复它?

问候

4

2 回答 2

2

是否可以以全局方式对其进行样式设置?

是的。

更新

来自 CodeIgniter用户指南

如果您不想使用上述方法设置首选项,则可以将它们放入配置文件中。只需创建一个名为pagination.php的新文件,在该文件中添加$config数组。然后将文件保存在:中config/pagination.php,它将被自动使用。如果您将首选项保存在配置文件中,则无需使用该功能。$this->pagination->initialize

旧答案

创建一个语言文件(或配置文件,您的选择)并将分页配置放入:

例如./application/language/english/pagination_lang.php::

$lang['pagination_conf'] = array(
    'full_tag_open'   => "<ul>",
    'full_tag_close'  => "</ul>",
    'first_link'      => "First",
    'first_tag_open'  => "<li>",
    'first_tag_close' => "</li>",
    'last_link'       => "Last",
    'last_tag_open'   => "<li>",
    'last_tag_close'  => "</li>"/*,
    And so on... */
);

然后将语言文件加载到控制器中,并将值传递给配置数组:

$this->lang->load('pagination');
$config = $this->lang->line('pagination_conf');

在这种情况下,一旦你改变了源文件,一切都会改变。

如果您使用配置文件,您可以将值存储在数组中,并且您将能够设置多个分页配置:

配置文件./application/config/pagination_conf.php::

$config['pagination_conf'] = array(
    'case1' => array(
        'full_tag_open'  => '...',
        'full_tag_close' => '...',
        'first_link'     => '...'
        // So on...
    ),
    'case2' => array(
        'full_tag_open'  => '...',
        'full_tag_close' => '...',
        'first_link'     => '...'
        // So on...
    )
);

您可以通过以下方式访问case1配置:

$this->config->load('pagination_conf', TRUE);
$config = $this->config->item('case1', 'pagination_conf');
于 2013-08-24T16:07:59.537 回答
0

将您的配置文件放入名为 config/pagination.php 的文件中,它将是全局的

于 2013-08-24T14:09:39.237 回答