スレに出てきた質問と回答のまとめです。Drupal全般に関するFAQについてはDrupalプロジェクトFAQも参考にしてください。
比較的遅い、重いがMySQLではそれほど激重という感じはしない。PostgreSQLでは管理画面がなかなか開けないという話はかなり聞く。PostgreSQLに最適化されていないのだろう。
また、Drupal 6.xは5.xに比べて重くなったという人が多いです。
標準のsearchモジュールで検索できます。検索できない場合はcron.phpを実行しているか確認しましょう。
一部の日本語が認識できない問題については、Searchモジュールの日本語認識についてをご覧ください。
これが起動させる度にゴミ箱整理したり、検索インデックスをちびちびと作っていく。検索インデックスが出来るまでは、英語だろうと日本語だろうと検索は出来ない。cron.phpの定期起動は他のモジュールでも必要なので、設定すべし。
cronによる定期起動ができないサーバ環境ならPoormanscronモジュールを導入すべし。
2009年2月の時点では、まだ5を使ってる人の方が多かったみたいです。6の方が明かに重かったり、6.xに対応していない拡張モジュールがあるようですが、6.xの方が管理は楽です。
Drupal.orgは2009年2月にDrupal 6に移行しました。Drupal 6がリリースされて2年経った2010年2月時点での調査が http://blamcast.net/articles/new-drupal-statistics で見れます。
Drupalのバージョン番号についても参考にしてください。
Should you upgrade to Drupal 7?の開発コストのグラフとメンテナンスコストのグラフが興味深いです。
かなり汚いです。drupal.orgやdrupal.jpでもけっこうエラーが出てます。
テーマのnode.tpl.phpを編集する、もしくはContemplateモジュールを使用して対処しましょう。Views2の出力ならテンプレートファイルを作れば変更できます。http://views-help.doc.logrus.com/help/views/analyze-theme や http://views-help.doc.logrus.com/help/views/using-theme を参考に。
テーマを作れば携帯からでも見れます。http://drupal-jp.sourceforge.jp/main/node/73 ではモバイル端末からサイトにアクセスした際に専用のテーマで表示するPDA themeモジュールが配布されています。
本家でもMobileテーマなど携帯に対応させるテーマやモジュールがたくさん公開されています。drupal-module.infoのカテゴリ別ページもどうぞ。携帯対応まとめも参考にしてください。
レンタルサーバ稼働実績ページをご覧ください。
ドットは小数点ではなく、単なる区切りです。"6.9"の次は"6.10"となります。その時点での最新バージョンは http://drupal.org/ の右上の"Download"のところから確認できます(5.xと6.xのように、たいてい二系統あります)。
モジュールでできることはモジュールにさせる、コアには必要最小限しか入れないっていう方針だそうです。コアに入れてしまうとリリース間隔が長くなったり、自由度が下がったりとデメリットもあります。
詳しくはなぜ○○の機能はコアの一部じゃないのか?をどうぞ。
標準モジュールのtaxonomyを使うのが一般的です。vocabularyは大分類で、実際のカテゴリにはtaxonomyを使います。termはtaxonomyとほぼ同義です。
Drupalのシステム的には問題ないし、デフォルトでは何も制限されていません。目的別の「ユーザ名に全角文字を使わせないようにする」を参照してください。
「ストーリー」と「ページ」は名前とデフォルトの設定が違うだけで中身は一緒です。「ページ」は「このサイトについて」とか、あまり更新しない固定ページ向けでデフォルトではコメントフォームが付いていません。「ストーリー」はプレスリリースとかアナウンスとか、ブログっぽいページ用でデフォルトでコメントフォームが付いています。
モジュールを追加すると、「ブログ」や「ブック」も使えるようになります。
他のフィルタと干渉してないか、/admin/settings/filters/[filter_num]/orderでのフィルタ順序は問題ないかを確認しましょう。
されません。cronを設定しましょう。
6.xだと設定で「タグ」(5.xだと「フリータギング」)にチェック入れれば投稿時にカンマ区切りで追加できるようになります(ただし既存のtaxonomyも選択ではなく入力する必要がある)。
Taxonomy Otherモジュールを使えば選択もできて追加もできるようになります。
テーマの設定画面(admin/build/themes/settings)から、「投稿情報の表示」を探してください。チェックを外すと投稿情報が表示されなくなります。
単純に一覧を出すだけでいいなら、標準モジュールのTrackerを試してみましょう。
トップページのようにノードの形で表示させたいなら、Viewsがおすすめです。Viewsを使えば特定のコンテンツタイプをユーザごとに一覧したりできます。別の方法としてAuthor Taxonomyモジュールを使ってtaxonomyのページを使うこともできます。
パスのエイリアスで user/1 --> node/403 とか適当なところに飛ばせば見れなくはなります。飛ばし先に存在しないページは登録できないので、アクセス権がありませんといったページを用意してそこに飛ばすようにすればよいでしょう。
また、Path Accessモジュールを使うと特定のページ(パス)を特定のロールでアクセス制限することができます。ロールごとに設定しなきゃいけないのが少し面倒ですが、このモジュールでも制限が可能です。
ちなみに、user/1のスーパーユーザを特別扱いしてほしいという要望はけっこうあるみたいですが、今のところそうするつもりはなさそうです(http://drupal.org/node/45871 など)。
user/1の管理者はモジュールのインストールとかupdate.phpの実行だけに絞って、記事の投稿は別ユーザを作った方がいいそうです。Best practicesのAccounts and rolesも参照してください。
Confirm node postモジュール(日本語での説明)をどうぞ。
jBoxモジュールをインストールするか、自分で日本語用の日付フォーマット("Y年n月j日(D) H:i"など)を追加してください。その後、インターフェースの翻訳でMon→月、Tue→火…と登録すれば曜日に日本語が表示されます。
DefaultTextForNodeモジュールをどうぞ。コンテンツタイプごとに本文のデフォルトテキストを指定できます。
また、コンテンツタイプの設定画面(/admin/content/node-type/***)の「投稿フォームの設定」で「本文フィールドのラベル」を空欄にし、本文をフィールドで作ってしまう方法があります。これでデフォルトの文章を入力しておけます。
他に、Node cloneモジュールを利用する方法や、FCKエディターのプラグイン処理で空欄だったらテンプレートを最初に読み込むように設定する方法もあるそうです。
settings.phpに$conf['maintenance_theme']を加えて、対象のテーマにmaintenance-page.tpl.phpとmaintenance-page-offline.tpl.phpを作ります。詳細は http://drupal.org/node/195435 をどうぞ。
まずは目的別Drupalモジュールをどうぞ。
モジュールを探すなら http://drupalmodules.com/ 、日本語ならDrupalモジュール情報共有サイトが便利です。
まずは重要モジュール一覧をご覧ください。
drupal.orgのProject usage overviewで全モジュールのダウンロード数を見ることができます。また、drupalmodules.comのTop RatedやMost Favoritedでも人気のモジュールを知ることができます。
また、Drupalの商用パッケージであるAcquiaに導入されているモジュール(Acquiaのページ)も参考になります。
ダウンロードしたファイルをsites/all/modules以下に展開します。コアモジュールの入っているmodules以下に直接入れても動きますが、アップグレードが面倒になります。詳しくは http://drupal.org/node/70151 や拡張モジュールのインストール方法を見てください。
普通はコアのファイルを直接いじったりはしない。コアの動作を変えたければhookとテーマでほとんど上書きできる。コアの動作を上書きする拡張モジュールがたくさん公開されているので、hookの使い方の参考に調べてみましょう。
モジュール開発者ガイドの「コアをハックしない」やプロジェクトFAQの「サイトを少し変更したいです」も参考にどうぞ。
5.xの作り方を知っているなら、こちらをどうぞ。メニューシステムとかフォーム関連が大幅に変わっています。Deadwoodを使えば半分くらいは自動変換してくれるらしいです。
なお、『Pro Drupal Development』(洋書)のFirst Editionは5.xが対象なので、6.x用に開発するならSecond Editionを買い直した方がいいです。とりあえず、ソースだけでもダウンロードしてみましょう。
Converting 6.x modules to 7.x | drupal.orgとConverting 6.x themes to 7.xにまとめられています。
Guestbookとか。あんま内部API使ってなくて構造が単純、コード量少ない。欠点はCSSやjQueryが組み込まれてないこと。
標準のstoryモジュールとかapi.drupal.orgのnode_exampleも参考になるよ。
とりあえずDevelモジュールを入れましょう。分かりやすく変数をダンプしてくれるし、DBのクエリも表示してくれます。
ちょっと古いですが http://drupal-jbox.net/?q=node/31 をどうぞ。
http://api.drupal.org/ は関数一覧だけじゃなくてExample modulesとかIn-depth discussionsもおすすめです。モジュール開発者ガイドもどうぞ。