無償CMS Geeklog導入ガイド
2007年3月1日紙版発売
GeeklogJapanese 著
B5変形判/320ページ
定価3,058円(本体2,780円+税10%)
ISBN 978-4-7741-3049-1
ただいま弊社在庫はございません。
書籍の概要
この本の概要
本書では,簡単にホームページをランクアップできるオープンソースCMS「Geeklog(ギークログ)」の紹介と導入・管理・運用方法を紹介しています。GeeklogはPC向けブログ機能付きCMSです。標準パッケージをインストールするだけでブログ機能を中心としたトラックバックなどを含むWeb 2.0,SEO,多言語サイト,そして携帯サイトまでも同時にできあがります。そのように大変高機能でありながらも運用は直感的で,しかも動作が軽いシステムです。拡張性にすぐれているので開発者にとって楽しいCMSで,さらに開発者だけでなくデザイナーやWeb運営者からも注目のCMSです。
こんな方におすすめ
- Webデザイナー/ディレクター/プロデューサー全般
- 企業・公共団体・各種団体のWebサイト担当者
- SEO対策(Web 2.0対策)でシステムアップを検討されている方
- 個人ブログユーザで,独自ドメインでもう一段階上のサイトを作りたい方
- UTF-8対応CMSサイトを企画している方
- 携帯サイト(モバイルサイト)を企画している方
- 開発者(会社)に任せないで自分たちでサイトを運営したい方
- 英語・韓国語・中国語・ドイツ語等,多言語切り替え表示システムを検討している方
- さまざまな言語の参加者が参加するサイトを運営する方
- 運用が簡単で手離れの良いCMSを提供したいWeb開発会社担当者
- レンタルサーバ会社の自動インストールサービスを企画している方
- セキュリティを重視する方
著者の一言
Geeklogを使ってPC向けサイトを設置するだけで,携帯(モバイル)サイトが同時に設置され,さらに更新も同時に行える他,多言語切り替え機能やUTF-8対応でグローバルなサイトがすぐにできあがります。さらに,SEOにも大変強いブログ機能をコアに持ったCMSです。 本書では,最新バージョンであるGeeklog 1.4.1の特徴・導入・管理・運用・カスタマイズ・開発者用データを詳しく紹介しています。Geeklogは元々セキュリティギークのために開発したブログCMS。Geeklogはじめての導入ガイド,ぜひご活用ください。また,オープンソース活動にご協力をお願いします。
問い合わせ先:http://www.geeklog.jp/
本書記載の内容に基づく運用結果について,著者および株式会社技術評論社はいかなる責任も負いかねます。あらかじめご承知おきください。
UNIXはThe Open Groupの登録商標です。その他,本書に登場する商品名,会社名などは一般的に各社の登録商標または商標です。
なお,本文中ではTM,C,Rなどのマークはとくに明記しておりません。
この書籍に関連する記事があります!
- オープンソースのCMSを使おう Geeklogでワンランク上のWebサイト運用・管理を実現
- CMS(Content Management System)とは,その名のとおりコンテンツを管理するシステムです。最近ではとくに,ECM(Enterprise Content Management)という包括的な括りのうち,とくにWebで利用できるWeb CMSをCMSとして表現することが多くなってきています。
- Geeklogとの出会い
- SOHO支援グループ「Ivy SOHO」を1998年に立ち上げ,その後SOHOに必要なSEOをテーマに毎月セミナーを開いていくうちにSEOにはブログが最適だという話題へ。セミナー終了後,参加者からCMSの講演の資料をもらったのが2004年の夏でした。
目次
Chapter1:Geeklogとは
- 1.1 Geeklogの紹介
- Geeklogは,PHPとMySQLで動作するCMS
- Geeklogは汎用CMS
- 開発の経緯
- 1.1.1 直感操作
- サイト運営者へ権限移管
- 1.1.2 軽快な表示
- 1.1.3 高いSEO効果
- キーワード対策
- 検索エンジン対策
- ページ対策
- Web 2.0対策
- 1.1.4 アクセシビリティ
- 1.1.5 ユーザビリティ
- 1.1.6 多様なシステム拡張と開発環境
- プラグイン
- PHPブロック
- 静的ページPHP
- カスタム関数
- アプリケーション
- 1.1.7 ハイセキュリティ
- サイトを複数で管理できる
- セキュリティギーク
- 重要なファイルは非公開領域で保護
- 本体機能が充実
- 1.2 オープンソースとは
- 1.2.1 CMSはオープンソースで多く提供
- 1.2.2 どのCMSを選ぶかは将来の運営の安定のためにも慎重に
- 1.2.3 オープンソース型のメリットは,初期費用を抑えられ,進化していくこと
- 1.2.4 オープンソースはハイセキュリティであることが必要条件
- 1.3 CMSの種類
- 1.3.1 汎用CMS
- 一般サイトからグループウェア,ポータルサイトの構築まで
- 1.3.2 ブログ
- 日々更新される日記的なWebサイト
- 1.3.3 Wiki
- ドキュメントを共同構築.履歴やタグ機能が強化
- 1.3.4 SNS
- コミュニティ内における情報交換.グループウェアも
- 1.3.5 Commerce
- 物品販売やダウンロード販売
- 1.4 Geeklogのしくみ
- 1.4.1 データベース
- 1.4.2 PHPプログラムファイル
- 1.4.3 テーマファイル
- 1.4.4 言語ファイル
- 1.5 Geeklogの機能
- 1.5.1 記事
- 記事の例
- 管理者がログインした場合の記事の表示
- 記事を編集する編集画面
- 1.5.2 検索機能
- 機能を絞った単純な検索も多様に設置可能
- 1.5.3 リンクシステム
- 1.5.4 メール送信サービス
- 1.5.5 メールマガジン
- 1.5.6 掲示板
- 1.5.7 イベントシステム
- 1.5.8 ユーザシステム
- 1.5.9 UTF-8対応
- 多言語システム
- 多言語切り替え
- 1.5.10 RSS配信機能
- 1.5.11 静的ページ機能
- 静的ページPHP
- 1.5.12 トラックバック,ピングバック,ピング
- トラックバックとは
- ピングバックとは
- ピング送信とは
- 1.5.13 コメントシステム
- 1.5.14 テーマシステム
- 1.5.15 ブロックシステム
- ブロックの種類
- レイアウトの種類
- 1.5.16 メール記事投稿
- 1.5.17 コンテンツのパーミッション
- 1.5.18 グループの管理権限設定
- 1.5.19 プラグインシステム
- 1.5.20 アクセス統計情報
- 1.5.21 サイトマップ機能
Chapter2:サーバ別導入ガイド
- 2.1 Geeklogをインストールしよう
- Geeklog Japanese提供Geeklog日本語版パッケージの内容
- 2.1.1 インストールの概要
- 設置条件を確認する
- データベースを準備する
- Geeklogをインストールする
- 2.1.2 サーバ別 データベースを準備する:XREA編
- XREAの登録
- ドメインウェブ設定画面
- データベースの追加
- インストールのヒント
- インストールの応用形態
- 2.1.3 サーバ別 データベースを準備する:SAKURA Internet編
- データベースの接続
- インストールのヒント
- 2.1.4 本体をインストールする
- Geeklog標準パッケージをダウンロード
- lib-common.php,config.phpを編集
- ファイルをアップロードする
- パーミッション変更
- インストールプログラム実行
- データベース作成後の属性チェック
- インストールディレクトリ削除
- 管理者ログイン
- 2.2 標準提供の推奨プラグインをインストールしよう
- 2.2.1 コンフィギュレーションエデイタプラグイン
- プラグインインストール
- 2.2.2 テーマエディタプラグイン
- プラグインインストール
- 2.3 サーバ環境を設定しよう
- 2.3.1 .htaccessの設定
- UTF-8へ変更
- register_globals Off
- エラー表示を隠す
- グーグルサイトマップ対策
- 拒否IPアドレス
- 2.3.2 .robots.txtの設定
- 標準提供ファイルの内容
- URLリライトONへ変更した場合の検索エンジンに対する注意
- 印刷用ページをインデックスから削除する
- 2.3.3 メールアカウントの設定
- 代表メールアドレス
- システムのメールアドレス
- 2.4 本体やプラグインをアップグレードしよう
- 2.4.1 アップグレード方法
- アップグレード手順
- 2.4.2 プラグインアップグレード方法
Chapter3:管理方法〜導入後すぐに試せるカスタマイズ
- 3.1 管理者が導入直後に運用環境を設定する
- 3.1.1 管理運営者のユーザアカウントを設定
- 3.1.2 コンフィギュレーションを設定する
- 本体のコンフィギュレーションを設定する
- プラグインのコンフィギュレーションを設定する
- 3.1.3 サイトのテーマを設定
- 3.2 管理者が導入後すぐ試せる簡単カスタマイズ
- 3.2.1 テーマをカスタマイズする
- テーマの構成とレイアウト
- レイアウト機能を拡張する
- テーマエディタでテーマを変更する
- 推奨テーマ「ProfessionalCSS」
- カスタムテーマ「GeekFlower」
- 携帯用テーマ「Mobile」
- 新しいテーマをインストールする
- テーマの応用:スタイルシートを切り替える
- カスタムメンバーログイン
- 話題ごとに異なるデザイン
- 3.2.2 PHPブロックでブロックをカスタマイズする
- アクセスカウンタPHPブロック:phpblock_stats()
- サイトカレンダPHPブロック:phpblock_mycal()
- 2階層メニュー:phpblock_nmoxmenu()
- テーマテスタPHPブロック:phpblock_themetester()
- サイトマップメニュー表示PHPブロック:phpblock_sitemapmenu()
- RSSアグリゲータ:phpblock_rssAggregator()
- ユーザ権限PHPブロック:phpblock_showrights()
- 多言語切り替えPHPブロック:phpblock_switch_language()
- 3.2.3 静的ページPHPでページを作成する
- 問い合わせフォームページを設置する
- ミニショップページを設置する
- RSSフィードを表示する
- ブロックコンテンツを表示する
- 3.2.4 カスタム関数を自由に記述する
- メール記事投稿カスタム関数:CUSTOM_photomail()
- 定期的処理を記述するカスタム関数:CUSTOM_runScheduledTask()
- CUSTOM_runScheduledTask()内でグーグルサイトマップジェネレータ「phpblock_gsmap()」を実行
- テンプレート変数を追加するカスタム関数:CUSTOM_templatesetvars()
- カスタムメニューを設定するカスタム関数:CUSTOM_menuEntries()
- ユーザ登録時に入力項目を追加するカスタム関数群:custom_users.php
- 3.2.5 アプリケーションを作成する
- サイトマップ:directory/sitemap.php
- トピックリスト:directory/topiclist.php
- 3.2.6 プラグインをインストールする
- メディアギャラリプラグイン
- Bad Behaviorプラグイン
- GUSプラグイン
- Banプラグイン
- Admin Toolboxプラグイン
- Dbmanプラグイン
- MT2Geeklogプラグイン
- Zen CARTプラグイン(Zen CART on Geeklog)
- Flickrプラグイン
- テクノラティプラグイン
- 3.2.7 本体ソースをハックする
- Geeklogを携帯対応させる
- タイトルをページタイトル-サイト名に変更する
- RSSフィード日付のツールチップ表示とXHTML対応
Chapter4:運用方法〜毎日のGeeklog運用方法とユーザの参加方法
- 4.1 管理者がサイトを運用する
- 4.1.1 承認待ちリストで承認作業を行う
- 4.1.2 ユーザとグループの管理
- ユーザ登録制の設定と承認作業
- ユーザの新規登録を許可しない設定
- ユーザ一括登録
- グループ管理
- 4.1.3 ブロックを運用する
- 話題ブロック
- 管理者専用ブロック
- ログインブロックとユーザ情報ブロック
- 新着情報ブロック
- アンケートブロック
- イベントブロック
- 4.1.4 記事を運用する
- 記事の追加
- コンフィギュレーション
- 話題(記事カテゴリ)を作る
- 記事と話題の関係
- メール記事投稿で記事を投稿する
- 4.1.5 静的ページプラグインを運用する
- 静的ページプラグインのコンフィギュレーション
- 4.1.6 リンクプラグインを運用する
- リンクプラグインのコンフィギュレーション
- 4.1.7 カレンダプラグインを運用する
- カレンダプラグインのコンフィギュレーション
- 4.1.8 アンケートプラグインを運用する
- アンケートプラグインのコンフィギュレーション
- 4.1.9 掲示板プラグインを運用する
- 掲示板プラグインのコンフィギュレーション
- 4.1.10 ファイル管理プラグインを運用する
- ファイル管理プラグインのコンフィギュレーション
- 4.1.11 テーマエディタプラグインを運用する
- テーマエディタプラグインのコンフィギュレーション
- 4.1.12 コンフィギュレーションエディタを運用する
- 投稿許可ドメイン設定
- 投稿時のパーミッションのデフォルト
- 管理者の承認制度
- 管理者宛メール通知
- 記事新規投稿コメント許可初期設定
- トラックバック,ピングの許可
- 記事新規投稿トラックバック許可初期設定
- トラックバックスパム対策
- 4.1.13 Geeklogのパーミッションシステム
- 4.1.14 トラックバック,ピングバック,ピング
- トラックバック
- ピングバックとは
- トラックバックとピングバック
- トラックバックやピングバックの受け付け
- トラックバックを無効にする方法
- トラックバックを送る
- ピングを送信する
- 4.1.15 RSS配信
- RSSファイルの作成方法
- 4.1.16 Spam-Xプラグイン
- 他のプラグイン
- 他の方法
- 情報源
- 4.1.17 クイックハウツー
- データベースのバックアップとリストア
- ユーザ新規登録のウェルカムメールをカスタマイズする
- 4.2 ユーザがサイトを利用する
- 4.2.1 Geeklog操作画面インターフェース
- 4.2.2 パスワードを忘れたら
- 4.2.3 記事投稿
- 4.2.4 コメント
- 4.2.5 リンク登録申請
- 4.2.6 イベント登録申請
- 4.2.7 アンケートに投票する
Chapter5 初めてのGeeklogカスタマイズ
- 5.1 カスタマイズ方法
- 5.1.1 初めてのGeeklog
- コンフィギュレーションエディタプラグイン
- テーマエディタ
- メール記事投稿
- サイトマップメニューPHPブロック
- 記事と静的ページ
- トップページデザイン
- 話題(記事カテゴリ)別のページデザイン
- 5.1.2 開発者向けカスタマイズ方法
- コンフィギュレーション
- 言語ファイル
- テーマ
- PHPブロック
- 静的ページPHP
- PHPブロック関数
- プラグイン
- ハック
- 5.2 カスタマイズ事例研究
- 5.2.1 Geeklog日本語サポートサイト
- Geeklog Japanese
- 5.2.2 SOHO支援サイト
- IvySOHO
- 5.2.3 企業サイト
- アイビー・ウィー
- 5.2.4 大学同窓会サイト
- 大阪市立大学学友会・各同窓会
- 5.2.5 中学校PTAサイト
- とよなかイレブンネット
- 5.2.6 医師会サイト
- 平野区歯科医師会
Chapter6:開発者用ドキュメント
- 6.1 開発者用データ
- Geeklog 1.4.1新機能
- セキュリティ
- スパム防御
- 6.1.1 config.php
- 6.1.2 Geeklogのファイル構成とパーミッション
- 非公開領域
- 公開領域
- 6.1.3 テーマの変数
- 変数について
- テンプレート変数を自由に追加する
- サイトヘッダ
- 記事
- サイトフッタ
- 6.1.4 テーブル一覧
- 6.1.5 日本語UTF-8版言語ファイル1.4.1版
- 6.1.6 lib-custom.php
- 6.1.7 lib-common.php
- 6.2 アプリケーション開発
- 6.2.1 開発の基本
- Hello, World
- セキュリティ
- どこに置くか
- プラグインにすべきか
- いくつかの注意点
- 他の関数
- COM_siteHeader()とCOM_siteFooter()
- COM_startBlock()とCOM_endBlock()
- データベースの使用
- $_TABLESへ追加
- まとめ
- 6.2.2 関数を定義する
- 6.2.3 サポートなど
- 6.3 プラグイン開発
- 6.3.1 はじめに
- 6.3.2 プラグインを記述する関数
- モデレーション関数
- 管理者/ユーザメニュー関数
- 検索関数
- コメント関数
- 統計関数
- アンインストール関数
- ユーザ関数
- 個人情報(profile)関数
- その他の(Misc)関数
- 6.3.3 管理者インターフェースの実装
- 6.3.4 プラグイン配布の準備
- プラグインのtar形式の圧縮ファイル
- 説明
- 6.3.5 プラグインインストール方法
- 6.3.6 プラグインの配布
- 6.3.7 プラグインAPI
- 統計
- コメント
- 検索API
- モデレーションAPI
- RSS API
- 管理者とユーザのAPI
- 6.4 セキュリティと対策
- 6.4.1 COM_applyFilterを使用する
- 概要
- パラメータをフィルタリングする理由
- COM_applyFilter
- register_globalsについて
- 悪い例と良い例
- COM_applyFilterを使わないほうが良いとき
- データベースに保存する前の準備
- 現在のユーザを確実に識別する方法
- 要約
- 6.4.2 register_globalsの問題
- register_globalsをオフにする
- register_long_arrays
- 6.4.3 lib-common.phpを使用する
- 6.4.4 ログの取り扱いについて
- 6.4.5 ファイルのパス
Appendix FAQ・用語解説
- App.1 インストール前のFAQ
- Q:非公開領域が使えないサーバにもインストールできますか?
- Q:MySQL5以上,PHP5,register_globals = offで動きますか?
- Q:Geeklogの管理操作を試すことができますか?
- Q:どうやってパスを見つけたら良いですか?
- App.2 インストール時のFAQ
- ・全般的によくある問題
- Q:ファイルの展開やFTPソフトはどれを使ったら良いでしょうか?
- App.3 インストール後のFAQ
- Q:ログインできない
- Q:URLリライトが機能しない
- Q:ゲストユーザの記事投稿を,ルート管理者でなく,記事管理者が編集したい
- Q:ゲストユーザがGeeklogを編集できない設定にする
- Q:ログインブロックを隠したい
- Q:管理者ブロック表示をまちがって削除したのを復活したい
- Q:サイトの管理などをSSLで行いたい
- Q:簡単なステップでできる検索ページを作成したい
- Q:トラブル解決のコツは?
- App.4 用語解説