質問: juserhelper::getprofile($user->id); echo print_r($profile); ここで、プロファイルフィールドの1つを更新するために何を入力しますか?それを書くのは私次第ですか、それともプロファイルを保存するコマンドがありますか?おかげで、マット
回答: これはjoomlaユーザープロファイルプラグインが行う方法です// sanitize the date $data['profile']['dob'] = $this->_date; $db = jfactory::getdbo(); $query = $db->getquery(true) ->delete($db->quotename('#__user_profiles')) ->where($db->quotename('user_id') . ' = ' . (int) $userid) ->where($db->quotename('profile_key') . ' like ' . $db->quote('profile.%')); $db->setquery($query); $db->execute(); $tuples = array(); $order = 1; foreach ($data['profile'] as $k => $v) { $tuples[] = '(' . $userid . ', ' . $db->quote('profile.' . $k) . ', ' . $db->quote(json_encode($v)) . ', ' . $order++ . ')'; } $db->setquery('insert into #__user_profiles values ' . implode(', ', $tuples)); $db->execute(); 参照は、onuseraftersave関数のroot => plugins => user => profile => profile.phpから取得できます。