Jump to content

appel de getAttributeCombinaisons dans Product.php


Recommended Posts

Bonjour,

 

Je veux appeler getAttributeCombinaisons dans Product.php mais chaque fois j'ai une erreur.

 

Pour info, j'ai testé :

 

Product::getAttributeCombinaisons()

$this->getAttributeCombinaisons()

 

Votre aide svp.

 

Merci

Link to comment
Share on other sites

$product_attrbiute_ids = array();
        foreach (Product::getAttributeCombinaisons($id_lang) as $product_attribute_id) {
            array_push($product_attrbiute_ids, $product_attribute_id['id_product_attribute']);
        }

 

=> Strict Standards: Non-static method ProductCore::getAttributeCombinaisons() should not be called statically in shop\classes\Product.php on line 4351

Link to comment
Share on other sites

Salut,

 

getAttributeCombinaisons n'est pas une méthode static donc tu ne peux pas l'appeler comme ça. Il te faut un objet Product. Si tu es dans la classe Product$this->getAttributeCombinaisons($id_lang) devrait marcher ou alors, tu as une autre erreur.

 

Bon courage.

Link to comment
Share on other sites

  • 3 weeks later...

Merci pour la réponse.

Désolé pour le retard, mais j'étais en vacances.

alors ce que j'essai de faire c'est ceci :

j'ai pris le code du module BlockPriceRange que je veux implémenter directement dans Product.php.

avec BlockPriceRange ça fonctionne bien mais pas comme je veux.

Dans son code, j'ai ceci :

private function getAttributePrices($params)
    {
        $product = $params['prod_obj'];
        $product_attrbiute_ids = array();
        foreach ($product->getAttributeCombinations() as $product_attribute_id) {
            array_push($product_attrbiute_ids, $product_attribute_id['id_product_attribute']);
        }

Je l'ai changé, dans Product.php du Core pour tester en :

$product_attrbiute_ids = array();
        foreach ($this->getAttributeCombinaisons($id_lang) as $product_attribute_id) {
        	array_push($product_attrbiute_ids, $product_attribute_id['id_product_attribute']);
        }

Résultat :

 

Fatal error: Using $this when not in object context in ...\shop\classes\Product.php on line 4368

Link to comment
Share on other sites

Salut,

 

Tu peux pas utiliser "$this" dans une méthode static

 

Si je me trompe pas tu travailles dans la méthode getProductProperties

 

De plus, j'ai remarqué que l'utilisation de $this->getAttributeCombinaisons($id_lang) est déprécié depuis la 1.5.0.10. Essaye plutôt

Product::deleteAttributeCombinaison($id_lang)

à la place de $this->getAttributeCombinaisons($id_lang).

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...