0

登録ユーザーがコンポーネントの機能を使用できるコンポーネントを作成しています。

私のコンポーネントにはいくつかのフォームとビューがあります。ログインしたユーザーのみがコンポーネントへのリンクにアクセスできるようにしたいと考えています。

Joomla のユーザー登録フォームにカスタム フィールドを追加するにはどうすればよいですか? 住所や会社名など、キャプチャする追加のフィールドがいくつかあります。

認証をコンポーネントに統合するにはどうすればよいですか?

ユーザー登録と認証の機能を再度作成せずにコンポーネントを完成させるにはどうすればよいですか。私が知っているように、joomlaユーザー登録を使用してコンポーネントに統合できます。しかし、私はそれを行う方法がわかりません。

親切に助けてくれてありがとう

4

1 に答える 1

1

それを実現する方法はたくさんあります。OFC の最良の方法は、常にコア ハックを行わずに統合することです。それは私が2つの方法を提案すると言いました。

ユーザー登録フィールドを拡張する多くのプラグインまたはコンポーネントがあります。ただし、これらはそれ自体が解決策であるため、独自のデータ (住所、会社など) を保持するコンポーネントには役に立ちません。

  1. joomla ユーザー モデルを使用して、コンポーネントの登録フロントエンド ビューを作成するだけです。そうすれば、ユーザーはコンポーネントを介して登録し、好きなフィールドをすべて追加できます。モデル内の db テーブルに非標準フィールドを追加するように注意する必要があります。

  2. 自分で登録フォームを作成したくない場合は、登録フォームのコンテンツ オーバーライドと組み合わせてユーザー プラグインを作成できます。プラグインは余分なフィールドを db テーブルに追加します。正しいユーザー イベントは次のようになります。


function onAfterStoreUser($user, $isnew, $success, $msg) {
   ...
   if ($isnew)
   {
      myComponent::createExtraFields($user['id'], $args);    }
   else
   {
      myComponent::updateExtraFields($user['id'], $args); 
   }
   ...
}
于 2010-02-28T19:21:49.907 に答える