Drupal8 新建第乙個模組

2022-01-16 20:35:17 字數 1482 閱讀 7575

參考:

drupal 8 rc 發布了。由於d8使用了symfony2的核心。與之前版本對比,模組的寫法有很大的不同。

下面的例子中寫乙個單獨顯示「hello world」頁面的模組。

首先要給模組起乙個唯一的機器名(machine name)

機器名必須滿足:

1. 字母開頭

2. 只能包含小寫字母和下劃線

3. 必須唯一,不能與其他模組,主題和配置檔案(profile)重名

4. 不能是src, lib, vendor, assets, css, files, images, js, misc, templates, includes, fixtures, drupal. 這些是保留關鍵字。

在根目錄的modules目錄中先新建custom和contrib目錄。

custom存放我們自己的寫的模組,contrib裡放從官網下的模組。當然不建這倆目錄系統也能識別不過這是規範。然後我們在custom目錄下新建"hello_world"目錄。

然後新建hello_world.info.yml,在d7是.info檔案。此檔案記錄模組的元資訊。就是最基本的資訊。

name 模組的名字,description 模組的描述幹什麼用的。package 屬於哪個分組。如core屬於d8核心模組。

type可以為module,theme或profile。

name:hello world module

description: creates a page showing "hello world".package:custom

type:module

version: 1.0core: 8.x

新建composer.json

新增控制器

在hello_world目錄中新建/src/controller/hellocontroller.php

<?php/**

* @file

* contains \drupal\hello_world\controller\hellocontroller. */

namespace drupal\hello_world\controller;

usedrupal\core\controller\controllerbase;

class hellocontroller extends

controllerbase

}?>

返回這個模組目錄下新建hello_world.routing.yml

hello_world.content:path: '/hello'defaults:_controller: '\drupal\hello_world\controller\hellocontroller::content'_title: 'hello world'requirements:_permission: 'access content'

新建並執行第乙個Vue專案

基本環境要求 node npmnpm install g vue cli 全域性安裝vue cli vue init webpack project name 建立乙個基於 webpack 模板的新專案 npm install 安裝所有依賴的庫 npm run dev 執行,預設需要8080埠 2 ...

linux第乙個驅動模組編譯

我們的源程式是乙個簡單的程式 include include module license dual bsd gpl static int hello init void static void hello exit void module init hello init module exit h...

01 第乙個核心模組程式

從核心中最簡單的驅動程式入手,描述linux驅動開發,主要文章目錄如下 持續更新中 01 第乙個核心模組程式 02 註冊字元裝置驅動 03 open close 函式的應用 04 read write 函式的應用 05 ioctl 的應用 06 ioctl led燈硬體分析 07 ioctl 控制l...