[SPIP Zone] API prestashop pour spip

Hello,

Quelques petits soucis rencontrés sur les urls produits dans l'API prestashop:

le filtre |recuperer_lapage torpille complètement l'url.
Si je le retire j'ai l'url dynamique mais sans réécriture.
Si je laisse le filtre, spip ne me retourne rien.

#SET{url_product,#CONFIG{prestashop_api/url}|concat{/index.php?controller=product&id_product=#GET{id}}|recuperer_lapage}

J'ai aussi essayé avec #URL_PRESTASHOP{product,51}
Mais au lieu d'obtenir
https://domaine.tld/nom-d-une-multiboutique/mon-url-produit-reecrite

J'obtiens:
https://domaine.tld/mon-url-produit-reecrite
CQFD 404.

J'ai bricolé avec #CONFIG{prestashop_api/url}|concat{/index.php?controller=product&id_product=#GET{id} pour obtenir une url valide mais c'est pas top. Je me passerais bien de la redirection prestashop et de ces liens un peu moisis. :slight_smile:

Une idée du pourquoi le sous répertoire disparaît?

Hello Stephan,

2 choses :

Tu peux utiliser #URL_PRESTASHOP*{product,51} pour avoir l’url «normale» (du controlleur)

Si avec l’étoile, l’URL n’est pas correcte (ie: il manque aussi nom-de-boutique/), c'est qu’il y a un souci de configuration quelque part.

Sinon, faudrait voir ce que retourne curl() du coup, pour voir si c'est lui qui perd le nom-de-boutique/… ce qui m’étonne ceci dit.

MM.

Le 13/08/2017 à 00:49, Stephan a écrit :

Hello,

Quelques petits soucis rencontrés sur les urls produits dans l'API prestashop:

le filtre |recuperer_lapage torpille complètement l'url.
Si je le retire j'ai l'url dynamique mais sans réécriture.
Si je laisse le filtre, spip ne me retourne rien.

#SET{url_product,#CONFIG{prestashop_api/url}|concat{/index.php?controller=product&id_product=#GET{id}}|recuperer_lapage}

J'ai aussi essayé avec #URL_PRESTASHOP{product,51}
Mais au lieu d'obtenir
https://domaine.tld/nom-d-une-multiboutique/mon-url-produit-reecrite

J'obtiens:
https://domaine.tld/mon-url-produit-reecrite
CQFD 404.

J'ai bricolé avec #CONFIG{prestashop_api/url}|concat{/index.php?controller=product&id_product=#GET{id} pour obtenir une url valide mais c'est pas top. Je me passerais bien de la redirection prestashop et de ces liens un peu moisis. :slight_smile:

Une idée du pourquoi le sous répertoire disparaît?

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

Hello,

Avec un nouveau modèle catégories, je suis arrivé à afficher ces images sur notre spip: Sélection des curateurs Audacieuse-Galerie

qui proviennent de ma catégorie de photo d'art catégorie "humain" de notre prestashop:

Même avec #URL_PRESTASHOP*{product,#GET{id}}
J'ai toujours pas la bonne url. (pas de boutique, pas d'url réécrite)

j'obtiens des https://www.domaine_sans_boutique/index.php?controller=product&id_product=242

J'ai remis une ligne du genre:
#SET{url_product,#CONFIG{prestashop_api/url}|concat{/index.php?controller=product&id_product=#GET{id}}|replace{/fr/, /#ENV{code_langue_en_cours}/}}

On est loin de la réécriture d'url. :frowning:
Je sèche...

Le 13/08/2017 à 10:37, Matthieu Marcillaud a écrit :

Hello Stephan,

2 choses :

Tu peux utiliser #URL_PRESTASHOP*{product,51} pour avoir l’url «normale» (du controlleur)

Si avec l’étoile, l’URL n’est pas correcte (ie: il manque aussi nom-de-boutique/), c'est qu’il y a un souci de configuration quelque part.

Sinon, faudrait voir ce que retourne curl() du coup, pour voir si c'est lui qui perd le nom-de-boutique/… ce qui m’étonne ceci dit.

MM.

Le 13/08/2017 à 00:49, Stephan a écrit :

Hello,

Quelques petits soucis rencontrés sur les urls produits dans l'API prestashop:

le filtre |recuperer_lapage torpille complètement l'url.
Si je le retire j'ai l'url dynamique mais sans réécriture.
Si je laisse le filtre, spip ne me retourne rien.

#SET{url_product,#CONFIG{prestashop_api/url}|concat{/index.php?controller=product&id_product=#GET{id}}|recuperer_lapage}

J'ai aussi essayé avec #URL_PRESTASHOP{product,51}
Mais au lieu d'obtenir
https://domaine.tld/nom-d-une-multiboutique/mon-url-produit-reecrite

J'obtiens:
https://domaine.tld/mon-url-produit-reecrite
CQFD 404.

J'ai bricolé avec #CONFIG{prestashop_api/url}|concat{/index.php?controller=product&id_product=#GET{id} pour obtenir une url valide mais c'est pas top. Je me passerais bien de la redirection prestashop et de ces liens un peu moisis. :slight_smile:

Une idée du pourquoi le sous répertoire disparaît?

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

----
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone