TYPO3

TYPO3は、PHPで記述されたオープンソースのコンテンツ管理システム(CMS)であり、モデル・ビュー・コントローラー(MVC)アーキテクチャを採用したWebアプリケーション開発フレームワークです。GNU General Public License(GPL)の下で開発されており、Linux、Windows、OS/2、macOSなど様々なオペレーティングシステム上で、Apache HTTP Server(Apache)やInternet Information Services(IIS)などのWebサーバーで動作します。

歴史



TYPO3は、Kasper Skårhøj氏によって最初に作成されました。その拡張性の高さから、多くのサードパーティ開発者がTYPO3に接続可能な拡張機能を提供しています。

特徴



TYPO3の大きな特徴は、その拡張性の高さと柔軟性にあります。既存のインターフェース、機能、モジュールに加え、10,000以上もの拡張機能がTYPO3拡張機能リポジトリ(TER)で公開されており、GNU General Public Licenseの下でダウンロード可能です。これらの拡張機能によって、TYPO3の機能は大幅に拡張され、多様なニーズに対応できるようになっています。

TYPO3は、ウェブサイトとして表示されるフロントエンドと、ウェブサイトのコンテンツを管理するバックエンドで構成されています。バックエンドは、編集者やサイト管理者が利用し、コンテンツの追加、編集、削除などを行います。TYPO3は、Linux、Windows、macOS上でApache、Nginx、Microsoft IIS、Caddy ServerなどのWebサーバーで動作し、PHPとMySQL、Oracle、PostgreSQLなどのリレーショナルデータベースシステムをサポートしています。必要なハードウェアとしては、最近のCPUと256MBのRAMを搭載したサーバーで十分に動作し、フロントエンドはJavaScriptが動作するあらゆるOSのWebブラウザ(Mozilla Firefox, Chrome, Edge, Safariなど)で表示できます。

設計



TYPO3の設計は、テンプレートを基本としています。既存のテンプレートを選択して、ロゴ、色、フォントなどのデザイン要素を変更したり、TypoScriptと呼ばれる設定言語を使って独自のテンプレートを作成したりすることができます。TypoScriptは、データベースのデータと置き換えられるプレースホルダーを含む情報から、大きなオブジェクトツリーを構成するのに利用されます。このオブジェクトツリー構造はテキストファイルに保存され、様々なエディターで編集できます。TypoScriptには条件以外の制御構造はありません。実際の処理はPHP関数に委ねられます。トップレベルのオブジェクトはPAGEオブジェクトであり、MENUオブジェクトには様々な種類があります。

TypoScriptの文法



基本的な文法

演算子
`=`:値の割り当て
`<=`:オブジェクト全体のコピー
`=<=`:参照の挿入
`>`:オブジェクトの削除

例題

typoscript
page = PAGE
page.10 = TEXT
page.10.value = Hello, World!


データ構造



コンテンツは主に、「pages」テーブルと「tt_content」テーブルに格納されます。「pages」テーブルはページに関する情報を保持し、「tt_content」テーブルはページに含まれるコンテンツ要素を保持します。各ページオブジェクトには固有の識別キー(uid)があり、現在のページにリンクしています。これにより、ページはツリー構造で構成され、システムがメニューやサイトマップを簡単に生成できるようになっています。

拡張性



TYPO3の大きな特徴の1つは、開発者が追加機能を提供するための柔軟なAPIを備えていることです。このAPIを利用したモジュールは「拡張機能」と呼ばれ、多くの開発者がTYPO3の開発者ポータルで公開しているリポジトリで入手可能です。

TemplaVoila



TemplaVoilaは、TYPO3の別のテンプレートエンジン拡張機能です。テンプレートを作成するためのグラフィカルなマッピングツールが含まれており、別のページモジュールやフレキシブルなコンテンツエレメントを作成する機能、開発者向けのAPIを提供します。これにより、新しいコンテンツ要素のタイプをプログラミングなしで作成できます。

TemplaVoilaは、編集者が直感的にコンテンツを扱うことを可能にし、TYPO3標準のテンプレートよりもWebページの保守性を柔軟にする一方で、標準テンプレートよりも若干処理が遅くなる場合があります。

関連項目



コンテンツ管理システム (CMS)

外部リンク



公式サイト
TYPO3 GmbH
TYPO3 UsersGroup Japan
スタイルチューン株式会社

もう一度検索

【記事の利用について】

タイトルと記事文章は、記事のあるページにリンクを張っていただければ、無料で利用できます。
※画像は、利用できませんのでご注意ください。

【リンクついて】

リンクフリーです。