it-swarm.com.de

Überschreibe com_users model function save

Ist es möglich, die Speicherfunktion von com_users zu überschreiben?

Das habe ich bisher versucht ...

<?php
echo JPATH_SITE.'/components/com_users/models/profile.php';
require_once JPATH_SITE.'/components/com_users/models/profile.php';

class NbrealUsersModelProfile extends UsersModelProfile{
    public function save($data){
        die("it works");
    }
}
?>

Ich habe dies in die Vorlagenindexdatei eingefügt.

4
miguelmpn

Diese Dokumentationsseite soll Ihnen dabei helfen:

https://docs.joomla.org/How_to_override_the_component_mvc_from_the_Joomla!_core

HINWEIS: Dies funktioniert nicht von alleine, sondern Sie müssen ein Plugin für Ihren überschriebenen Controller erstellen:

Es kann vorkommen, dass Sie das Joomla! MVC-Komponente, um neue Funktionen hinzuzufügen oder die Komponente vollständig anzupassen. Die MVC-Komponente kann vollständig überschrieben werden, indem dieselben Klassennamen verwendet werden, die in der Komponente verwendet werden. Dies wird erreicht, indem ein System-Plugin geladen wird, bevor die Komponente von der Anwendung versendet wird.

Sie können dazu Ihr eigenes Plugin erstellen.

class plgSystemComContentOverride extends JPlugin {
  public function __construct(&$subject, $config = array()) {
     parent::__construct($subject, $config);
 }

 public function onAfterRoute() {
     $app = JFactory::getApplication();
     if('com_content' == JRequest::getCMD('option') && !$app->isAdmin()) {
         require_once(dirname(__FILE__) . '/comcontentoverride/my_content_controller.php');
     }
 } 

}

in Ihrem Fall müssen Sie es in etwas ändern

class plgSystemComContentOverride extends JPlugin {
  public function __construct(&$subject, $config = array()) {
     parent::__construct($subject, $config);
 }

 public function onAfterRoute() {
     $app = JFactory::getApplication();
     if('com_user' == JRequest::getCMD('option') && !$app->isAdmin()) {
         require_once(dirname(__FILE__) . '/../../templates/{template_name}/code/com_users/profile.php');
     }
 } 
}
3
jdog