2011-12-28 5 views
0

私はDrupalで構築されたWebアプリを手に入れなければなりませんでした。フロントエンドにあるリンクを編集する必要があります。これは単一のページアプリケーションですが、私がindex.phpを開くと、11000行以上ものコードが含まれているbootstrap.incへのリンクがありますが、いずれもフロントエンドに関係しません。Drupal index.php

+1

リンクはテーマに含まれていますか? – ThatOtherPerson

+0

Haha didn;テーマフォルダを調べて、今テーマ/テーマ名/テンプレートで浪費している問題を解決しました:) – adamhuxtable

+0

ここには実際の質問はありません。あなたはindex.phpが何をしているのか尋ねていますか?リンクを編集するにはどうすればよいですか? bootstrap.incはどのように動作しますか? –

答えて

3

Drupalでは、index.phpはルータです。サーバーから要求が取得され、パスが追加されます。次に、リクエストを多数の(複雑な)レイヤーにルーティングしてHTMLを作成します。

ダイブする前にDrupalの基本を読んでから、アプリケーションに頭を浮かべてください。

あなたの質問に基づいて、Drupalsルーティングの基本を完全に誤解しているように見えます。

  • 要求/ fooの/バーは、Apache
  • のApacheに到着 `index.phpを呼び出す?Q = fooの/バー
  • のDrupalはブートストラップされます。
  • Drupalはメニューシステムを読み込みます。
  • 「foo/bar」を処理するmenu-routerがある場合、Drupalがルックアップします。または、親のうちの1人が後退する(この場合は「foo」)。
  • 見つかった場合、Drupalはそのページのコールバックを呼び出します。たとえば、my_bar.moduleはhook_menuを実装し、 "foo/bar"をコールバックmy_bar_pageと登録します。この機能はこのモジュールで使用できます。
  • my_bar_pageが呼び出されます。その出力はHTMLでなければなりません。
  • Drupalはテーマレイヤーを読み込み、受け取ったHTMLを$ contentとしてpage templateに渡します。 (とりわけ、ブロックシステムをロードし、フッターを追加し、すべてのページ変数に複雑な前処理を負荷します)。

これは実際に何が起こっているのか非常に単純化されたバージョンであることに注意してください。現実は、コールバック、キャッシングレイヤ、フック、テーマレイヤの巨大なものです(スパゲッティ、一部の人は言うかもしれません)。

+1

http://london2011.drupal.org/conference/sessions/living-breathing-drupal-biology-requestを参照して、何が起きているのか、Drupalが要求を処理する方法を理解してください。 –

-1

フロントエンドのリンクがテーマで変更されます。 index.phpに触れる必要はありません。テーマを編集できる場所がいくつかあります。探し始めるのが良い場所は/ admin/structure/blockです。

関連する問題