4

Joomlaは初めてです。Joomla2.5を使用してWebサイトを作成しました。デフォルトのJoomlaユーザー管理システムであるログインページがあります。

私が欲しいのは、すべてのユーザーデータを表形式で表示することです。どうすれば同じことができますか?

編集1

以下の手順でユーザーを確認できます。

  1. として管理者ページに移動しますwww.site.com/administrator
  2. 管理者としてログイン
  3. メニューをクリックUsers >> User Managerすると、ユーザーのリストが表示されます。

同じリストを印刷したいのですが、バックエンドの管理者サイトではなく、Webサイトに印刷します。

4

4 に答える 4

7

これを行うには、ユーザーリストを表示するページでクエリを実行します。$rowオブジェクトを使用してすべてのユーザーテーブルフィールドをフェッチできます。

$db =& JFactory::getDBO();
$query = "SELECT * FROM #__users" ;
$db->setQuery($query);
$rows = $db->loadObjectList();
foreach ($rows as $row) {
  echo $row->id.'|'.$row->username.'|'.$row->email;
}

編集1

以下は私が使用したものです。

インストールされた拡張機能Flexiカスタムコード

これを使用してモジュールを作成し、その中に上記のコードを追加して、表示するメニューにそのメニューを表示します。

于 2012-10-09T12:57:05.580 に答える
1

このためには、ある種のコンポーネントが必要になります。たとえば、このユーザープロファイルコンポーネント(NBこれを仕事仲間として私の例として使用したことがあります-私が望むほどカスタマイズ可能ではありません-しかし、おそらくあなたの後には大丈夫です。メンバー全体がいるので、もっとたくさんあると確信していますリストカテゴリ。)

それらの1つをインストールして、表示するものを選択するだけです。他のコンポーネントと同じようにメニューに追加すれば、すぐに利用できます。

于 2012-10-09T13:00:56.570 に答える
1

2つの可能な解決策

  • JEDで利用可能なユーザープロファイルコンポーネントを使用する
  • 「User-ContactCreator」プラグインを有効にして、新しいユーザーごとに連絡先プロファイルを作成し、Joomlaの組み込みメニュー項目を使用してすべての連絡先を一覧表示します
于 2012-10-09T13:06:33.443 に答える
1

// opt-groups、事前に選択されたユーザー、より良いユーザーIDを使用した私の例

function getUserList ($user_id) {
    $db = JFactory::getDBO ();
    $db->setQuery ("SELECT id, username, usertype FROM ' . $db->quoteName ('#__users') . ' ORDER BY usertype,username ASC");
    $rows = $db->loadAssocList ();
    static $opt_tag;

    $list = '<option value="0">' . JText::_ ('SELECTION') . '</option>';

    foreach ($rows as $row) {
        if (empty ($opt_tag) || $opt_tag != $row['usertype']) {
            $list .= '<optgroup label="' . $row['usertype'] . '">';
            $opt_tag = $row['usertype'];
        }

        if ($row['id'] < 10) {
            $id = '000' . $row['id'];
        }

        elseif ($row['id'] < 100) {
            $id = '00' . $row['id'];
        }

        elseif ($row['id'] < 1000) {
            $id = '0' . $row['id'];
        }

        $list .= '<option value="' . $row['id'] . '"' . (((int) $user_id == $row['id']) ? ' selected="SELECTED"' : '') . '>' . $id . ' - ' . $row['username'] . '</option>';
        if (empty ($opt_tag) || $opt_tag != $row['usertype']) {
            $list .= '</optgroup>';
        }
    }
    return $list;
}
于 2014-09-13T06:37:07.930 に答える