Geeklog日本語版

							2014年 7月22日
							Geeklog Japan

1. 概要

Geeklog Japanでは、Geeklog日本語標準版およびGeeklog日本語拡張版を提供
しています。

標準版はGeeklogを元に、オリジナルのGeeklogに対して以下の変更を加えたものです。

	* ロケール等を設定する日本語化プラグインの追加
	* 携帯サポートの追加
	* CSSのみでレイアウトするテーマメーカー「professional_css」の追加
	* 有用なプラグイン、カスタム関数やブロックの同梱
	* オリジナルのGeeklogに先行したバグ修正

拡張版は、上記標準版に対してさらに多くのアドオンを追加して提供しています。

Geeklog日本語版の詳細な情報については http://www.geeklog.jp/ をご覧ください。


2. Geeklog 2.1.0-jp-1.0の内容

オリジナルのGeeklogに対して、以下のソースファイルを追加、修正しています。

  (1)本体の修正

    o インストール前チェック(Precheck)の追加

	public_html/admin/install/precheck.php
	public_html/admin/install/precheck.js
	public_html/admin/install/precheck.css
		インストール前のサーバーの日本語環境をチェックするプログラムで
		す。インストール画面の「日本語環境のインストール前チェック」を
		クリックして実行します。
		php.ini .htaccess siteconfig.php設定方法の指南を行います。
		データベースの設定画面で、ただしい情報を入力すればデータベース
		名が自動的にリストボックスで表示されます。
		※ JavaScriptが無効の場合はテキスト入力になります。

    o インストーラーの修正

	public_html/admin/install/index.php
		インストールのエンコードをUTF-8固定にしています。

	public_html/admin/install/disable-plugins.php
		インストール時に、プログラムで指定しているプラグイン以外は無効
		とします。
		インストールすると不具合が発生するプラグインのインストールを防
		ぐことができます。


    o その他本体の修正

	system/lib-sessions.php
		クッキーを使えない携帯でも、ログイン処理が行えるよう、
		ハックしています。

	system/classes/unpacker.class.php	
		圧縮ファイルによるプラグインアップロード機能の本体側の不具合を
		修正しました。

	public_html/lib-common.php
		携帯表示用にCOM_refresh()からsystem/custom/custom_cellular.phpの
		CUSTOM_refresh()を呼ぶよう、修正しました。

	public_html/imageresizer.php
		携帯サポートのための関数を追加しました。
		画像をリサイズして表示する機能を提供します。

	public_html/mobileblocks.php
		携帯サポートのための関数を追加しました。
		ブロックのみを表示する機能を提供します。

	public_html/admin/story.php
		記事編集時に、時刻指定で年月日の順番になるよう、言語専用テンプ
		レートファイルを呼ぶハックを追加しています。
		日本語用言語専用テンプレートファイルとして以下をすべてのテーマ
		で追加して提供しています。

		public_html/layout/ 以下の各テーマの以下のファイル:
			admin/story/storyeditor_advanced.japanese_utf-8.thtml
			admin/story/storyeditor.japanese_utf-8.thtml


    o コアプラグインの修正

	calendarプラグイン
		オリジナル版で郵便番号が16文字に拡張されたので、日本語版で
		これまで8文字に拡張していた変更を中止しました。


  (2) プラグインの追加

    すべてのプラグインはCSRF対策を加えています。
    Geeklog 1.8.1から、すべてのプラグインはGeeklog 1.6からのプラグイン管理の
    機能である、圧縮ファイルによるプラグインアップロードに対応しました。

    o 標準版と拡張版に同梱

	日本語化プラグイン(Japanize) バージョン 1.0.6RC5
		Geeklogを日本語サイトとして活用するための数々の設定や、
		機能追加を行っています。
		日本語版開発の多くは、ハックではなく、このプラグインに
		任せています。かならずインストールして、実行してください。
		実行しない場合、メール送信などで不具合が発生します。

	カレンダーjpプラグイン(Calendarjp) バージョン 2.2.0
		Calendarプラグインを日本語サイト向けにローカライズして
		機能アップさせました。


    o 拡張版のみに同梱

	自動タグプラグイン(Autotags) バージョン 1.1.1
		日本語言語ファイルとタグ管理画面のテンプレートを変更しました。
		本家の最新バージョンv1.1.1をマージしました。

	CAPTCHAプラグイン(Captcha) バージョン 4.0.2
		画像を使用した認証を提供します。

	カスタムメニュープラグイン(Custommenu) バージョン 0.7.0
		グローバルメニューを管理画面で設定します。

	Dataproxyプラグイン(Dataproxy) バージョン 2.0.0
		Geeklogのコンテンツ(記事、静的ページ、掲示板等)を取得
		する共通のAPIを提供します。

	Dbmanプラグイン(Dbman) バージョン 0.7.1
		データベースのバックアップやリストアを実行します。
		定期バックアップ等も。(mysqldumpコマンドを使用しません。)

	ファイル管理プラグイン(Filemgmt) バージョン 1.6.0.jp3
		ファイルのダウンロード機能を提供します。
		※ダウンロードプラグイン(Download)が提供されています。

	掲示板プラグイン(Forum) バージョン 2.9.0hg
		掲示板機能を提供します。

	Mycaljpプラグイン(Mycaljp) バージョン 2.2.0
		サイトカレンダーを表示する提供するPHPブロック関数
		phpblock_mycaljp2() を提供します。
		※DataproxyプラグインのAPIを利用しているため、
		Dataproxyプラグインのインストールが必要です。

	話題譲渡プラグイン(Nmoxtopicown) バージョン1.0.12
		トピックとその中の記事の所有者を変更する機能を提供します。

	サイトマッププラグイン(Sitemap) バージョン 2.0.0
		Geeklogサイトのサイトマップ表示とGoogle Sitemaps用XMLを作成し
		ます。
		※DataproxyプラグインのAPIを利用しているため、
		Dataproxyプラグインのインストールが必要です。

	テーマエディタープラグイン(Themedit) バージョン 1.2.1
		テンプレートとカスケーディング・スタイルシートの編集や画像の管
		理機能を提供します。


  (3) カスタム関数とPHPブロック関数の追加

    system/lib-custom.phpを修正し、以下のソースを呼んでいます。

    o 標準版と拡張版に同梱

	system/custom/custom_cellular.php
		携帯端末からのアクセスをサポートするためのカスタム関数本体です。
		携帯からのアクセスの場合、テーマmobileに切り替えるなど。
		cookieを使わないでログインさせるため、携帯のサポートは
		本体のセッション関連のハックや、画像のリサイザーとブロック
		単独表示のためのPHPの追加もあわせて行っています。
		XHTMLはサポートしません。
		※XHTMLをサポートしたい場合は、mobile_xhtmlを活用してください。


    o 拡張版のみに同梱

	system/custom/custom_forcethemechange.php
		サイトのデフォルトテーマが変化した場合のコールバック関数
		サイトのテーマを変更したらサイトのテーマを利用している
		ユーザーのテーマも自動的に新テーマに変更します。

	system/custom/custom_getstaticpage.php
		静的ページコンテンツの内容を返すカスタム関数
		CUSTOM_getStaticpage()
		静的ページPHPやアプリケーション等で活用します。

	system/custom/phpblock_lastarticles.php
		新着記事のタイトルリンクを表示するPHPブロック関数
		phpblock_lastarticles() phpblock_lastarticles2()
		ブロックや静的ページPHPで活用します。
		※複数フィード新着表示は RSSアグリゲータ(rssAggregator) を
		  活用してください。

	system/custom/phpblock_showrights.php
		現在ログインしているユーザーの権限を表示するPHPブロック関数
		phpblock_showrights()
		ブロックや静的ページPHPで活用します。

	system/custom/phpblock_sitemapmenu.php
		すべての話題と記事のリンクによるメニューを表示するPHPブロック
		関数phpblock_sitemapmenu()
		ブロックや静的ページPHPで活用します。
		※現在ではあまり活用されていません。

	system/custom/phpblock_stats.php
		ページアクセス回数を表示するPHPブロック関数
		phpblock_stats()
		ブロックや静的ページPHPで活用します。
		※現在ではあまり活用されていません。

	system/custom/phpblock_themetester.php
		テーマを変更するテーマチェンジャーのPHPブロック関数
		phpblock_themetester()
		当初テーマテスターとして開発されましたが、その後、
		機能としてはテーマチェンジャーに変わっており、
		変更したテーマがデータベースに保存されるようになりました。

	system/custom/custom_templatesetvars.php
		テンプレート変数を生成します。
		{topic_id}, {sp_id}, {home_id}, {login_status}, {prof_url_jp}
		{custom_class}, {custom_os}, {custom_browser}, {custom_version},
		{custom_alias}, {custom_mobile}

	system/custom/useragent.class.php
		ユーザーエージェントのテンプレート変数を生成します。
		class:{custom_class} os:{custom_os} browser:{custom_browser}
		alias:{custom_alias} version:{custom_version} mobile:{custom_mobile}


  (4) テーマ

    o 標準版と拡張版に同梱

	public_html/layout/mobile
		携帯専用のテーマ
		※このテーマはPC用には選べません。

	public_html/layout/professional_css
		「professional」のデザインを元にした、日本語サイトのための標準
		テーマであり、custom.cssによってのみカスタマイズできるテーマメー
		カー。
		table要素によるレイアウトを排除し、HTML 4.01 Transitional+CSS
		2で一から全てを書き直しました。
		「professional_css」をベースにテーマを開発すると、アップグレー
		ドは、主にcustom.css上書きするだけで可能になります。
		1.8.1までの日本語版推奨テーマ。
		2.0.0からは、本家版レスポンシブWEBデザインのDenimを積極的に
		活用してください。


    o 拡張版のみに同梱

	public_html/layout/WAIproCSS
		「professional_css」を基本に, アクセシィビリティに配慮したテーマ。


  (5) その他

	CHANGES.jp
		現行リリース(Geeklog 2.0)に関する修正内容です。

	CHANGES-1.8.jp
		Geeklog 1.8に関する修正内容です。(保守用のブランチ
		作成の前までです。)

	CHANGES-1.7.jp
		Geeklog 1.7に関する修正内容です。(保守用のブランチ
		作成の前までです。)

	CHANGES-1.6.jp
		Geeklog 1.6に関する修正内容です。(保守用のブランチ
		作成の前までです。)

	CHANGES-1.5.jp
		Geeklog 1.5に関する修正内容です。(保守用のブランチ
		作成の前までです。)

	emailgeeklogstories.en
		オリジナルのemailgeeklogstoriesです。

	emailgeeklogstories
		emailgeeklogstoriesを日本語化したものです。

	NEWS
		配布パッケージのNEWSです。

	readme.ja
		オリジナルのreadmeを日本語化したものです。

	README.jp
		本ファイルで、オリジナル版に対する日本語版の開発概要を紹介
		しています。

	release_jp.php
		リリースのためのバージョン管理ファイルです。


3. Geeklog日本語版の修正履歴

   すべてのGeeklog日本語版のIssueは以下から参照できます。

   http://code.google.com/p/geeklog-jp/issues/


以上です。
