By accessing the website and accepting the Cookie Policy, you agree to use the cookies provided by the Site in accordance with to analyze traffic, remember your preferences, and optimize your experience.
October CMS - 快速入门 16 - 建立简单的组件
2018-10-24 13:18:21    252    0    0
emengweb

本节将创建有关actor的组件:
首先创建一下目录结构

首先创建插件的基本功能raiseinfo/movies/components/Actors.php

<?php 
namespace Raiseinfo\Movies\Components;

use Cms\Classes\ComponentBase;
use Raiseinfo\Movies\Models\Actor;


class Actors extends ComponentBase
{
    public $actors;
    public function componentDetails()
    {
        // TODO: Implement componentDetails() method.
        return [
            'name' => 'Actor List',
            'description' => 'List of actors'
        ];
    }

    public function onRun()
    {
        $this->actors = $this->loadActors();
    }

    protected function loadActors()
    {
        return Actor::all();
    }
}

注册组件Plugin.php

public function registerComponents()
{
    return [
        'Raiseinfo\Movies\Components\Actors' => 'actors'
    ];
}

切换到后台,我们可以看见组件里面已经有了我们刚刚创建的组件了

在首页添加演员列表

打开首页,刷新页面,发现没有任何输出,这是因为,我们没有编写组件的HTML,所以不会有任何显示。
首先传入演员列表,并循环输出

components/actors/default.htm

{% set actors = __SELF__.actors %}


<ul>
    {% for actor in actors %}
        <li>{{ actor.name }} {{ actor.lastname }}</li>
    {% endfor %}
</ul>

刷新首页,就看见显示的演员的列表:

到目前为止,最简单的组件我们就创建好了,我们可以继续扩展其功能。

上一篇: October CMS - 快速入门 17 - 为组件添加选项

下一篇: October CMS - 快速入门 15 - 通过Form Widget添加新数据

252 人读过
文档导航