ページ配列は、ページのデータを保持する配列で、プラグイン関数等の引数です
OneThird CMS内のソースコードでは、概ね $page_ar という名前を使用しています
また、現在描画中のページ配列は、グローバル変数の $params['page'] に収納されています
なお、インナーページも同様のページ配列を持っており
インナーページ描画中だけ $params['inner_page'] にページ配列が収納されます
データベースから直接ページデータを取得するには、read_pagedataを使います
read_pagedata( ページ番号, 収納先ページ配列);
ページ配列の主なキーは以下のとおり
$page_ar['id'] ... ページ番号
$page_ar['meta'] ... メタ情報
$page_ar['date'] ... 日付
$page_ar['mod_date'] ... 更新日
$page_ar['contens'] ... ページ内容
$page_ar['title'] ... ページタイトル
$page_ar['type'] ... ページ タイプ =1 通常ページ =180 フォルダ (それ以外は、plugin/plugin.phpのコメント参照)
$page_ar['mode'] ... =0 下書き, =1 通常ページ ,=2 トップページ 3以上 特殊ページ(自由に使える)
$page_ar['block_type'] ... =1 通常ページ =5 インナーページ
$page_ar['user'] ... 作成ユーザーID
$page_ar['tag'] ... タグ
ページタイプは、通常ページとプラグインページを見分けるためのものです
ページタイプが1の場合は通常ページとみなされ、標準描画関数 basic_renderer が呼び出されます
それ以外は、プラグイン固有の関数が呼び出されます(ページタイプの詳細は、plugin/plugin.phpのコメント参照)
なお、ページタイプ50番(hidden)は親ページのデータ保存用の特殊なページで、表示することができません(システム上ガードされています)
ページメタデータは、データベース上では metadata というカラムに収納されています
metadata は、配列データなのですが、シリアライズされて(文字列化されて)収納されているで使用する場合はアンシリアライズしなければなりません
read_pagedataでは、metadata をアンシリアライズし、metaという名前の配列に収納元のmetadataは削除します
OneThird CMSのタグデータは、単純な文字列ではありません
二種類のタグを同時に収納する特殊な書式になっています
通常のタグと、システムタグです
通常タグは、ページプロパティで編集できますがシステムタグはプログラムからでないと修正できない仕様になっています
タグフォーマット
#タグ文字, #タグ文字, @システムタグ, @システムタグ .....
システムタグは、例えば上位でレクトリ情報を収納する事に使います
folder-systagタグオプションがONの場合は、ディレクトリ構造が以下の書式で記載されます
@dir:ページ番号_タイプ/ページ番号_タイプ/....
詳しくは folder systag を参照してください