Pages index personnalisé
Sakura Membre non connecté
Booster Fronde
-
Booster Fronde
- Voir le profil du membre Sakura
- Inscrit le : 19/12/2010
ElenWii Membre non connecté
-
Administrateur
- Voir le profil du membre ElenWii
- Inscrit le : 14/08/2009
- Site internet
- Groupes :
-
Equipe Graphique
Donc dans le fichier HomeCustomHomePageExtensionPoint.class.php
il te faut ajouter l'appel des données soit via une requête SQL du type :
Code PHP :
private function build_modules_view(SelectQueryResult $results) { $tpl = new FileTemplate('HomeCustom/modules.tpl'); foreach ($results as $row) { if ($row['idcat'] == '38') { $link = new Url('/download/download' . url('.php?id=' . $row['id'], '-' . $row['id'] . '+' . Url::encode_rewrite($row['title']) . '.php')); $tpl->assign_block_vars('item', array( 'U_LINK' => $link->absolute(), 'U_IMG' => Url::to_absolute($row['image']), 'C_IMG' => !empty($row['image']), 'TITLE' => $row['title'], 'DESC' => $row['short_contents'], 'PSEUDO' => $row['login'] )); } } $this->template->put('MODULES', $tpl); } private function build_themes_view(SelectQueryResult $results) { $tpl = new FileTemplate('HomeCustom/themes.tpl'); foreach ($results as $row) { if ($row['idcat'] == '37') { $link = new Url('/download/download' . url('.php?id=' . $row['id'], '-' . $row['id'] . '+' . Url::encode_rewrite($row['title']) . '.php')); $tpl->assign_block_vars('item', array( 'U_LINK' => $link->absolute(), 'U_IMG' => Url::to_absolute($row['image']), 'C_IMG' => !empty($row['image']), 'TITLE' => $row['title'], 'DESC' => $row['short_contents'], 'PSEUDO' => $row['login'] )); } } $this->template->put('THEMES', $tpl); }
soit en utilisant le flux RSS :
Code PHP :
private function build_feed_news_view() { $feed_template = new FileTemplate('HomeCustom/feed_news.tpl'); $this->template->put('FEED_NEWS', Feed::get_parsed('news', Feed::DEFAULT_FEED_NAME, 0, $feed_template, 5, 1)); }
Ensuite dans ton home.tpl :
Il faut utiliser les données transmises
Requete SQL :
Code TPL :
# START item # <div class="lc lm"> <a href="{item.U_LINK}"> <div style="float:left;"> <p class="lm_img_container"> # IF item.C_IMG # <img src="{item.U_IMG}" title="{item.TITLE}" class="lm_img" /> # ENDIF # </p> </div> <p class="lc_title lm_title">{item.TITLE}</p> <p class="lc_desc">{item.DESC}</p> <p class="lc_auteur"> par : <span>{item.PSEUDO}</span></p> </a> </div> # END item #
Flux RSS :
Code TPL :
J'espere que cela t'aidera à mettre tout cela en place. La solution requête SQL est plus complète et peux facilement être mise en forme. Celle Flux RSS est plus simple et une mise en forme moins complète.
Si tu veux les derniers download d'une catégorie, tu n'auras pas d'autre choix que de prendre la solution requête SQL.
Ce sont des exemples, il te faudra ajuster en fonction de ton besoin
Sakura Membre non connecté
Booster Fronde
-
Booster Fronde
- Voir le profil du membre Sakura
- Inscrit le : 19/12/2010
ElenWii Membre non connecté
-
Administrateur
- Voir le profil du membre ElenWii
- Inscrit le : 14/08/2009
- Site internet
- Groupes :
-
Equipe Graphique
Sakura Membre non connecté
Booster Fronde
-
Booster Fronde
- Voir le profil du membre Sakura
- Inscrit le : 19/12/2010
ElenWii Membre non connecté
-
Administrateur
- Voir le profil du membre ElenWii
- Inscrit le : 14/08/2009
- Site internet
- Groupes :
-
Equipe Graphique
Tu as besoin de récupérer quoi comme éléments ?
Sakura Membre non connecté
Booster Fronde
-
Booster Fronde
- Voir le profil du membre Sakura
- Inscrit le : 19/12/2010
Édité par Sakura Le 29/10/2013 à 08h54
ElenWii Membre non connecté
-
Administrateur
- Voir le profil du membre ElenWii
- Inscrit le : 14/08/2009
- Site internet
- Groupes :
-
Equipe Graphique
Code PHP :
private function build_view() { $id_cats = array('38'); $querier = PersistenceContext::get_querier(); $results = $querier->select('SELECT file.id, file.idcat, file.title, file.short_contents, file.timestamp, file.image, user.login FROM ' . PREFIX . 'download file LEFT JOIN ' . DB_TABLE_MEMBER . ' user ON user.user_id = file.user_id WHERE visible = 1 AND idcat IN :children ORDER BY timestamp DESC', array( 'children' => $id_cats )); $this->build_modules_view($results); } private function build_modules_view(SelectQueryResult $results) { $tpl = new FileTemplate('HomeCustom/modules.tpl'); foreach ($results as $row) { if ($row['idcat'] == '38') { $link = new Url('/download/download' . url('.php?id=' . $row['id'], '-' . $row['id'] . '+' . Url::encode_rewrite($row['title']) . '.php')); $tpl->assign_block_vars('item', array( 'U_LINK' => $link->absolute(), 'U_IMG' => Url::to_absolute($row['image']), 'C_IMG' => !empty($row['image']), 'TITLE' => $row['title'], 'DESC' => $row['short_contents'], 'PSEUDO' => $row['login'] )); } } $this->template->put('MODULES', $tpl); }
Il te faut créer un fichier modules.tpl avec le code suivant :
Code TPL :
# START item # <div class="lc lm"> <a href="{item.U_LINK}"> <div style="float:left;"> <p class="lm_img_container"> # IF item.C_IMG # <img src="{item.U_IMG}" title="{item.TITLE}" class="lm_img" /> # ENDIF # </p> </div> <p class="lc_title lm_title">{item.TITLE}</p> <p class="lc_desc">{item.DESC}</p> <p class="lc_auteur"> par : <span>{item.PSEUDO}</span></p> </a> </div> # END item #
Dans le home.tpl tu appel ton code :
Code TPL :
# INCLUDE MODULES #
Sakura Membre non connecté
Booster Fronde
-
Booster Fronde
- Voir le profil du membre Sakura
- Inscrit le : 19/12/2010
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie