Joomlaがユーザープラグインでユーザーを削除できないようにすることはできますか?ユーザープロファイルを無効にする必要がありますが、削除しないでください。
私はonUserBeforeDeleteをいじくり回してきましたが、ドキュメントはv1.5を参照しているため、「イベントをキャンセルする」ための適切な方法に近づいているかどうかはわかりません。
プラグインで、削除ボタンがオンになっているページにリダイレクトします。
public function onUserBeforeDelete($user)
{
$app = JFactory::getApplication();
//possibly set an error message
JError::raiseWarning( 100, 'Warning: Cannot delete user profile' );
$app->redirect(JRoute::_('index.php?option=com_users&view=profile&layout=edit'));
jExit();
}
その例は調整できますが、ユーザーを単に停止するだけで機能するはずです。いくつかのmysqlクエリでユーザーを「無効」にして、エラーを設定するだけでなく、無効になっているように見せることもできます。
https://github.com/joomla/joomla-cms-examples/blob/master/plugins/user/example/example.php
そこにあるリンクは1年前に最後に編集されたものではないので、onUserBeforeDelete
に大きな変更があったことは間違いありません。