まあ、あなたができることは、CMS内のルートを処理し、その結果を基になるアプリケーションに委譲するCMS拡張を作成することです。
例を挙げると、drupal 7で考えることができます。このCMSでは、モジュールに関するデータとモジュールのコードの2つのファイルを含むフォルダを持つモジュールを作成できます。
my_module/my_module.info < -Moduleのデータ
name = My Module
description = A description of what your module does.
core = 7.x
my_module/my_module.module < - あなたはあなたのアプリケーションのDrupalへの "統合" があり、この基本的なコードでモジュールのコード
<?php
/**
* Respond to a drupal's URL with a callback.
*/
function my_module_menu() {
$menu = array();
$menu["App"] = array(
"page callback" => "my_module_run",
"access callback" => true,
);
return $menu;
}
/*
* Do the job
*/
function my_module_run() {
ob_start();
// Call your application by including it's index.php file or whatever
// operation needed.....
// Capture the result of the application.
$result = ob_get_clean();
// If the request is ajax, echo the result.
if(!empty($_SERVER['HTTP_X_REQUESTED_WITH'])
&& strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
echo $result;
} else {
//Otherwise, return it, so it is rendered as part of the
// CMS content.
return $result;
}
}
?>
あなたがする必要があるのは、それをDrupalモジュールとしてインストールしてから、https:// your-cool-site/Appにアクセスしてアプリケーションを実行するだけです。
drupalモジュールオーサリングの詳細here
私はそれが役に立てば幸い:)
Hereを念頭に置いて、これを持つ作品のフレームワークである、それはdrupalのへのバインディング(6、7、8)とjoomlaのを持っています。
CMSの上にある既存のソフトウェアを切り替えることは常にオプションではなく、自分のCMSを作成するのが嫌いです。この問題のさまざまなオプションについて考えています。 – tomtom