OpenCart Modèle de charge à l'extérieur de Contrôleur

Je suis en train de travailler sur un OpenCart projet, qui nécessite beaucoup de personnalisation.
pour mon projet, je dois changer quelque chose dans le panier de la bibliothèque (system/library/cart.php).

Que je devrais l'appeler une fonction personnalisée qui est définie à l'intérieur du modèle de produit (catalog/model/catalog/product.php).

Dans un contrôleur, le chargement d'un Modèle et d'utiliser ses fonctions, c'est facile:

    $this->load->model("catalog/product");
    $this->model_catalog_product->customFunction();

Mais comment faites-vous pour charger un modèle à l'extérieur d'un contrôleur?
Vous ne pouvez pas créer une nouvelle instance du modèle, j'ai déjà essayé ça:

    require_once("catalog/model/catalog/product.php");
    $a_model = new ModelCatalogProduct();

De toute évidence, cela ne fonctionne pas parce que les modèles n'étaient pas destinés à être utilisés dans une telle voie.

J'ai aussi essayé d'utiliser l'opérateur de résolution de portée ( ModelCatalogProduct::customFunction())
Il ne fonctionne pas non plus.

J'ai pu passer toutes les informations nécessaires comme arguments, mais je préfère utiliser le modèle à l'intérieur de la charrette de la bibliothèque de la classe, de provoquer des changements serait mondial.

Est-il même possible de charger un modèle à l'extérieur d'un contrôleur dans OpenCart?

Quelle raison avez-vous pour avoir besoin de faire ce exactement?
J'ai rejoint le projet quand il était d'environ 70%. Le calcul du prix est entièrement personnalisé et il est mis en œuvre que pour le front-end (Le site utilise AJAX pour obtenir les informations sur combien ça va coûter). Le problème, c'est que ces changements n'étaient pas mises en œuvre dans le backend. De sorte que le prix est calculée ok, mais lorsque l'utilisateur ajoute un produit au panier, il utilise la valeur par défaut openCart calcul du prix. J'ai du modifier le getProducts() la fonction de sorte que le prix sera ok.
La coutume de prix est calculé dans le modèle de produit. Alors maintenant, j'ai le choix de passer par tous les fichiers et de trouver où je dois changer le code, ou je ajouter environ 10 lignes pour le Panier de la bibliothèque et que ce serait fait. C'est pourquoi je vous demande.

OriginalL'auteur itd | 2012-11-22