web-dev-qa-db-ja.com

プラグインでユーザーの削除を防止しますか?

Joomlaがユーザープラグインでユーザーを削除できないようにすることはできますか?ユーザープロファイルを無効にする必要がありますが、削除しないでください。

私はonUserBeforeDeleteをいじくり回してきましたが、ドキュメントはv1.5を参照しているため、「イベントをキャンセルする」ための適切な方法に近づいているかどうかはわかりません。

5
GDP

プラグインで、削除ボタンがオンになっているページにリダイレクトします。

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に大きな変更があったことは間違いありません。

1
Jordan Ramstad