目次
phpcms V9 モジュール追加(再掲)、phpcmsv9
ホームページ バックエンド開発 PHPチュートリアル phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

Jul 12, 2016 am 08:49 AM
phpcms

phpcms V9 モジュール追加(再掲)、phpcmsv9

転載元: http://www.cnblogs.com/Braveliu/p/5101345.html

phpcms用モジュール作成の開発手順

【1】作成モジュール ディレクトリ

これまでの学習を通じて、phpcms V9 フレームワークのモジュールは phcms/modules ディレクトリにあり、各ディレクトリはモジュールと呼ばれることがわかっています。

モジュールを作成したい場合は、phpcms/modules ディレクトリの下にフォルダーを作成し、その中にコントローラー クラスを置きます。

たとえば、test というモジュールを開発したい場合は、まず phpcms/modules ディレクトリにフォルダーを作成し、test という名前を付けます。

他のモジュールの構造を観察すると、テストモジュールの標準構造は通常次のようになる必要があることがわかります:

classes はモジュールクラスライブラリパッケージです

functions はモジュール関数ライブラリパッケージです

templatesモジュール テンプレート パッケージで、通常はアクセス許可制御用のコントローラー テンプレートがバックグラウンド テンプレートを含みます。

テンプレートにカスタマイズされたフロントエンド テンプレートがある場合は、phpcmstemplatesdefault ディレクトリにモジュール名のディレクトリを作成して、フロントエンド テンプレートを配置する必要があります。「デフォルト」は、デフォルトで使用されるスタイル パッケージの名前です。デフォルト。

【2】モジュールコントローラークラスの作成

前のステップで test という名前のモジュールを作成しました。 次に、このモジュールに 2 つのコントローラー クラスを追加します。

phpcms V9 のコントローラーは、phpcms/modules/モジュール名/ ディレクトリにあるモジュールのクラス ファイルです。クラス ファイルの名前は、コントローラー名 + .php です。たとえば、コントローラーの名前が mytest の場合は、mytest.php という名前を付けることができます。コントローラー クラスはデフォルトでシステムの関数ライブラリを継承し、直接使用できます。

コントローラークラスのクラス名とコントローラーファイル名は同じである必要があります

Controller クラス ファイルには 2 つの形式が含まれます:

1. フロントエンド ブラウジング (権限制御を除く)、mytest.php コントローラー

phpcms/modules/test ディレクトリに新しいテキスト ファイルを作成し、mytest という名前を付けて変更します。ファイルのタイプは php です。Notepad++ を使用して内容を開いて編集します:

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

 1 <?php
 2     defined('IN_PHPCMS') or exit('No permission resources.');
 3     class mytest 
 4     {
 5         function __construct(){}
 6         public function init() 
 7         {
 8             $myvar = 'hello world!';
 9             echo $myvar;
10         }
11         public function mylist() 
12         {
13             $myvar = 'hello world! This is an example!';
14             echo $myvar;
15         }
16     }
17 ?>
ログイン後にコピー

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

実はこのコントローラーのURLアクセス方法は以前紹介したことがありますので、「phpcms V9 MVCモードとURLアクセス解析」を参照してください

http://www.abcd.com.cn/phpcms/index.php?m=test&c=mytest は

と同等です

http://www.abcd.com.cn/phpcms/index.php?m=test&c=mytest&a=init。

「a」値が入力されていない場合、デフォルトで init メソッドが呼び出されます。

どうしてこうなったの? 「phpcms V9 MVC モードと URL アクセス分析」をもう一度読んでください。

2. バックエンド管理 (権限制御を含む)、mytest_admin.php コントローラー

バックグラウンド コントローラーは、admin モジュールの下に admin クラスをロードし、このクラスを継承する必要があります。なお、追加したコントローラクラスは他のクラスを継承するため、コントローラクラスのメソッド名がクラス内のメソッド名と一致しないと影響が出る可能性があるので注意してください。詳細については。

phpcms/modules/test ディレクトリで、新しいテキスト ファイルを作成し、mytest_admin という名前を付け、ファイルの種類を php に変更し、Notepad++ で開き、内容を次のように編集します。

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル リーリー

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

コントローラーにテンプレート呼び出しを追加

phpcms はテンプレートとプログラムを完全に分離できるため、よりわかりやすく表示できるようにテンプレートをコントローラー プログラムにロードする必要があります。

1. フロントエンドテンプレートをロードします

フロントエンド テンプレート ファイルは、phpcmstemplatesdefault モジュール名のディレクトリにあります。この例も phpcmstemplatesdefaulttest にあります。

テンプレートをロードする方法は次のとおりです:

リーリー

このうち、testはモジュール名、mytestはテンプレートディレクトリ内のテンプレート名、defaultはスタイル名、defaultはdefaultです。

上記の例で、mytest テンプレートを mytest.php の init メソッドにロードする場合 (代わりに、コンテンツ モジュールの下にindex.html をコピーすることもできます)、次のようにします (テンプレート名は Index になります):

リーリー

この時、URL経由でメソッドにアクセスすると、対応するテンプレートが読み込まれます。

2. 背景テンプレートをロードします

背景テンプレート ファイルは phpcmsmodules モジュール名 templates ディレクトリにあります。この例も phpcmsmodulestesttemplates にあります。

テンプレートをロードする方法は次のとおりです:

リーリー

ここで、mytest_admin_list は phpcmsmodulestesttemplates の mytest_admin_list.tpl.php です。

注:

ここのテンプレートにはサフィックスとして .tpl.php が必要です 上記の例で、mytest_admin_list テンプレートを mytest_admin.php の init メソッドにロードする場合は、次のようにします。 リーリー

テンプレート パーツをロードするには、システム フレームワークのソース コード コンテンツ モジュール phpcmsmodulescontent content.php ファイルの実装を参照することもできます。

【3】データベースモデルクラスの作成

この時点で、各モジュールのデータベース モデルが phpcms/model/ ディレクトリにあることは明らかです。

数据模型文件的命名规则建议为:数据表名称 + '_model.class.php'

如果在我们的创建的模块中我要使用一个数据库“test”,首先需要建立一个数据库模型文件,文件名称为'test_model.class.php'

内容如下:

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

 1 <?php
 2 defined('IN_PHPCMS') or exit('No permission resources.');
 3 pc_base::load_sys_class('model', '', 0);
 4 class test_model extends model
 5 {
 6     public function __construct() 
 7     {
 8         $this->db_config = pc_base::load_config('database');
 9         $this->db_setting = 'default';
10         $this->table_name = 'test';
11         parent::__construct();
12     }
13  }
14 ?>
ログイン後にコピー

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

书写数据库模型类注意一下几点:

1. 数据库模型类名称必须与文件名称相同。

2. 必须继承与数据库模型基类model。

3. $this->db_setting = 'default'为数据库配置文件中配置数据库链接池名称,默认为default,一般情况下不需要修改。

4. $this->table_name = 'test'为数据表名称。

这样我们就建立好一个数据库模型类。那么,怎么使用呢?

在模块的控制器中使用(加载方式):

$this->db = pc_base::load_model('test_model');
ログイン後にコピー

具体如下:

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

 1 db->select(); // 调用select方法
16             var_dump($result);
17         }
18         public function mylist()
19         {
20             $myvar = 'hello world! This is an example!';
21             echo $myvar;
22         }
23     }
24 ?>
ログイン後にコピー

phpcms V9 追加モジュール (転送)、phpcmsv9_PHP チュートリアル

其中$this->db中所支持的方法请参照父类 phpcms/libs/classes/model.class.php 中方法。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1137573.htmlTechArticlephpcms V9 添加模块(转),phpcmsv9 转自:http://www.cnblogs.com/Braveliu/p/5101345.html 为phpcms创建一个模块的开发流程 【1】创建模块目录 通过前面的学...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

phpcmsで詳細ページに飛ぶ方法 phpcmsで詳細ページに飛ぶ方法 Jul 27, 2023 pm 05:23 PM

phpcms で詳細ページにジャンプする方法: 1. header 関数を使用してジャンプ リンクを生成します; 2. コンテンツ リストをループします; 3. コンテンツのタイトルと詳細ページのリンクを取得します; 4. ジャンプ リンクを生成します。

phpcmsとはどのようなフレームワークですか? phpcmsとはどのようなフレームワークですか? Apr 20, 2024 pm 10:51 PM

PHP CMS は、Web サイトのコンテンツを管理するための PHP ベースのオープンソース コンテンツ管理システムであり、使いやすさ、強力な機能、拡張性、高いセキュリティ、無料のオープンソースが特徴です。時間を節約し、Web サイトの品質を向上させ、コラボレーションを強化し、開発コストを削減することができ、ニュース Web サイト、ブログ、企業 Web サイト、電子商取引 Web サイト、コミュニティ フォーラムなどのさまざまな Web サイトで広く使用されています。

WeChat ログイン統合ガイド: PHPCMS 実践的な戦闘 WeChat ログイン統合ガイド: PHPCMS 実践的な戦闘 Mar 29, 2024 am 09:18 AM

タイトル: WeChat ログイン統合ガイド: PHPCMS の実践 今日のインターネット時代において、ソーシャル ログインは Web サイトの重要な機能の 1 つになりました。中国で最も人気のあるソーシャル プラットフォームの 1 つである WeChat のログイン機能は、ますます多くの Web サイトでも使用されています。この記事では、WeChat ログイン機能を PHPCMS Web サイトに統合する方法と、具体的なコード例を紹介します。ステップ 1: WeChat オープン プラットフォーム アカウントを登録する まず、WeChat オープン プラットフォームに開発者アカウントを登録し、対応する開発権限を申請する必要があります。ログイン [WeChatオープンプラットフォーム]

phpcmsって無料じゃないの? phpcmsって無料じゃないの? Mar 01, 2023 am 10:24 AM

phpcms は完全に無料ではありません。 phpcms はオープン ソースの cms システムですが、オープン ソースは無料という意味ではありません。無料版と商用版の 2 つのバージョンがあります。無料版は個人の非営利使用に限定されますが、商用版はライセンスの購入が必要です。個人でも使用できます。研究目的で使用する場合は、商用利用する場合は一定の料金を支払う必要があります。

phpcms とはどういう意味ですか? phpcms とはどういう意味ですか? Apr 20, 2024 pm 10:39 PM

PHPCMS は、オープンソース、モジュール性、柔軟性、使いやすさ、コミュニティ サポートを特徴とする無料のオープンソース コンテンツ管理システム (CMS) です。企業 Web サイト、電子商取引 Web サイト、ブログ、コミュニティ フォーラムなど、さまざまな種類の Web サイトの作成に使用できます。技術要件には、PHP 5.6 以降、MySQL、MariaDB または PostgreSQL データベース、Apache または Nginx Web サーバーが含まれます。

phpcms にはどのようなバージョンがありますか? phpcms にはどのようなバージョンがありますか? Jun 14, 2023 pm 01:13 PM

phpcms には 2 つのよく知られたバージョンがあります: 1. カスタム URL ルールをサポートする phpCMS4 ウェブサイト管理の背景が美しく使いやすく、機能を自由に拡張できるフロントエンド プラグインが豊富です。 . 多言語、マルチサイト管理、ページをサポートする phpCMS2008R1 マネージャーは便利で、柔軟で、非常に軽量で、高速に実行されます。

phpcms はどのデータベースを使用しますか? phpcms はどのデータベースを使用しますか? Feb 21, 2023 pm 06:57 PM

phpcms は mysql データベースを使用します。 phpcms は、PHP + MYSQL を技術基盤として使用して開発された PHP オープンソース Web サイト管理システムです。 PHPCMS V9 は基本的な動作フレームワークの構築に OOP 方式を採用しており、サポートされる PHP バージョンは PHP5 以降、サポートされる MYSQL バージョンは MySql 4.1 以降です。

PHPCMS ユーザー名のセキュリティ設定戦略が明らかに PHPCMS ユーザー名のセキュリティ設定戦略が明らかに Mar 14, 2024 pm 12:06 PM

PHPCMS ユーザー名のセキュリティ設定戦略が明らかに Web サイト開発において、ユーザー アカウントのセキュリティは常に開発者が非常に重要視している側面です。ユーザー名はユーザーのログイン認証情報であるだけでなく、ユーザーの個人情報が公開され、さらにはセキュリティ リスクを引き起こす可能性があるため、ユーザー名のセキュリティ設定も重要です。この記事では、PHPCMS でのユーザー名のセキュリティ設定戦略を明らかにし、開発者が参照できる具体的なコード例を示します。 1. 共通のユーザー名の使用を防止する ユーザー名のセキュリティを向上させるために、開発者はユーザーが過剰なユーザー名を使用しないようにする必要があります。

See all articles