plugin 基本檔案結構

1 篇文章 / 0 new
author
plugin 基本檔案結構
每個插件會有下列基本檔案
目錄 檔名 說明
  version.php 如版本號,依賴項或成熟度級別
  lib.php 這里為大多數插件類型定義了Moodle核心和插件之間的接口。文件的預期內容取決於特定的插件類型。
Moodle核心經常(但不總是)加載給定插件類型的所有lib.php文件。出於性能原因,強烈建議將此文件盡可能保持小,並在其中實現所需的代碼。所有插件的內部邏輯都應在自動加載的類或locallib.php文件中實現。
Coding style#Functions and Methods
  styles.css 插件貢獻清單#CSS樣式
CSS編碼樣式
  settings.php Admin settings
  thirdpartylibs.xml 文件應列出與插件捆綁在一起的所有第3方庫
<?xml version="1.0"?>
<libraries>
    <library>
        <location>javascript/html5shiv.js</location>
        <name>Html5Shiv</name>
        <version>3.6.2</version>
        <license>Apache</license>
        <licenseversion>2.0</licenseversion>
    </library>
    <library>
        <location>vendor/guzzle/guzzle/</location>
        <name>guzzle</name>
        <version>v3.9.3</version>
        <license>MIT</license>
        <licenseversion></licenseversion>
    </library>
</libraries>
<location>:位置是相對於插件根目錄的庫目錄或文件的路徑,有關第三方庫的更多信息,請參見
  environment.xml 插件可以通過此文件聲明其其他環境要求,例如強制提供一些其他可選的PHP擴展, Environment checking#Configuration file overview
<?xml version="1.0" encoding="UTF-8" ?>
<COMPATIBILITY_MATRIX>
  <PLUGIN name="plugintype_pluginname">
    <PHP_EXTENSIONS>
      <PHP_EXTENSION name="soap" level="required">
      </PHP_EXTENSION>
    </PHP_EXTENSIONS>
  </PLUGIN>
</COMPATIBILITY_MATRIX>
  readme_moodle.txt  
  README.TXT, CHANGES.TXT  
lang/en/ plugintype_pluginname.php 插件的英文字符串在這裡定義。至少必須存在$ string ['pluginname']。Activity模塊有一個例外,它們的預期文件名只是pluginname.php(不帶mod_前綴)
String API
db/ install.xml 定義插件資料庫(tables, fields, indexes and keys). 應使用內置的XMLDB編輯器來產生此文件. XMLDB Documentation
upgrade.php 此處定義了升級步驟(例如數據庫方案更改以及在升級插件時必鬚髮生的其他事情)。內置的XMLDB編輯器可用於生成代碼以更改數據庫方案. Upgrade API
access.php 定義了插件功能. Access API
install.php 允許您在安裝插件的數據庫方案後立即執行PHP代碼
uninstall.php 允許您在插件卸載期間刪除插件的數據庫表和數據之前執行PHP代碼
events.php 這裡定義了事件處理程序(訂閱)。它列出了您的插件想要觀察並得到通知的所有事件
Event API
messages.php 允許將您的插件聲明為消息傳遞提供者. Message API
services.php 此處介紹了插件提供的外部功能和Web服務
Adding a web service to a plugin
Web services API
External functions API
renamedclasses.php 已重命名以適合自動加載的類的詳細信息。有關詳細信息, 請參見論壇討論
classes/   Automatic class loading
Coding style#Namespaces
cli/   Moodle代碼中的約定是,所有CLI腳本都應放入插件目錄內的 cli文件夾中。確保所有這些文件正確地將自己聲明為CLI腳本(必須在加載config.php之前定義常量)
定義'CLI_SCRIPT' true ;
要求 __DIR__ '/../ ../ ../ config.php' ;
require_once $ CFG- > libdir '/clilib.php' ;
amd/   使用異步模塊定義(AMD,自Moodle 2.9開始受支持)編寫的插件 Javascript模塊
yui/   插件的YUI模塊(建議在Moodle 2.8及更早版本中包含Javascript的方式)
jquery/   插件的jQuery模塊(Moodle 2.8及更早版本)
pix/ icon.svg 插件的圖標。活動模塊應提供24 x 24像素的顏色圖標。所有其他插件文件應以16 x 16 px單色圖標表示。舊版瀏覽器的圖標應該具有備用pix / icon.png版本。
Moodle圖標提供了圖標設計準則


Plugin files
Free Web Hosting