Flux rss

3 messages dans ce sujet

Posté(e) · Signaler ce message

Bonjour,je

souhaiterai changer les criteres des objets choisis dans le flux rss.

J'ai lu un sujet à ce propos mais pour une version peel 5.

Vous pouvez mettre dans la requête SQL un ORDER BY date_maj DESC pour avoir les derniers produits mis à jour

Je suis personnellement sous Peel 6.1.1

Je voudrais que le critere choisi pour les objets à mettre dans le flux rss soit les dernieres articles mis à jour sur le site (soit les nouveaux objets, soit ceux qui sont modifiés).

J'ai trouvé quelques lignes de code relatif à sql dans le fichiers modules/rss/rss.php... Mais je ne sais quoi ni comment modifier...

// Récupération et affichage des données

$sql = "SELECT p.id, p.prix, p.tva, p.nom_" . $_SESSION['session_langue'] . " AS nom, p.date_maj, p.description_" . $_SESSION['session_langue'] . " AS description, p.promotion, c.id AS categorie_id, c.nom_" . $_SESSION['session_langue'] . " AS categorie

FROM peel_produits p

INNER JOIN peel_produits_categories pc ON p.id = pc.produit_id

INNER JOIN peel_categories c ON c.id = pc.categorie_id

WHERE p.etat='1' ".(!empty($cat)?" AND pc.categorie_id='".intval($cat)."'":"")."

GROUP BY p.id

LIMIT ".intval($limit);

$result = query($sql);

while ($prod = fetch_assoc($result)) {

$product_object = new Product($prod['id'], $prod, false, null, true, !is_micro_entreprise_module_active());

$desc_rss = trim(str_replace(array(" ", " ", " ", " \r", " \n", "\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n", "\r\n\r\n\r\n", "\r\n\r\n", "\n\n\n\n\n\n", "\n\n\n", "\n\n"), array(" ", " ", " ", "\r", "\n", "\r\n", "\r\n", "\r\n", "\n", "\n", "\n"), strip_tags(String::html_entity_decode_if_needed(String::htmlspecialchars_decode($product_object->description, ENT_QUOTES)))));

$promotion_rss = $product_object->get_all_promotions_percentage(false, 0, true);

$output .= '<item>

<title>' . strip_tags($product_object->name . ' : ' . $product_object->get_final_price(0, display_prices_with_taxes_active(), is_reseller_module_active() && is_reseller(), true)) . '</title>

' . ($promotion_rss > 0 ? '<promotion>- ' . $promotion_rss . '</promotion>

' : '') . '<guid>' . $product_object->get_product_url() . '</guid>

<pubDate>' . gmdate('D, d M Y H:i:s', strtotime($product_object->date_maj)) . ' GMT</pubDate>

<description>' . String::str_shorten($desc_rss, 1000, '', '...') . '</description>

</item>

';

unset($product_object);

}

// Fin d'affichage

$output .= '</channel>

</rss>

Merci d'avance de votre aide toujours précieuse, précise et rapide.

Claire

www.lilouetpuce.fr

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour,

la requête modifié donne :


$sql = "SELECT p.id, p.prix, p.tva, p.nom_" . $_SESSION['session_langue'] . " AS nom, p.date_maj, p.description_" . $_SESSION['session_langue'] . " AS description, p.promotion, c.id AS categorie_id, c.nom_" . $_SESSION['session_langue'] . " AS categorie
FROM peel_produits p
INNER JOIN peel_produits_categories pc ON p.id = pc.produit_id
INNER JOIN peel_categories c ON c.id = pc.categorie_id
WHERE p.etat='1' ".(!empty($cat)?" AND pc.categorie_id='".intval($cat)."'":"")."
GROUP BY p.id
ORDER BY date_maj DESC
LIMIT ".intval($limit);
[/CODE]

Simon.

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Merci beaucoup...

Le tout fonctionne parfaitement !

Quel talent !

Claire

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping