[HomeLanding] Page d'accueil personnalisée avec administration
version finale
Créations de Modules
j1.seth Membre non connecté
- Administrateur
- Voir le profil du membre j1.seth
- Inscrit le : 01/09/2008
- Site internet
- Groupes :
- Chef de Projet
- Equipe Développement
Reprise du message précédent
Code PHP :
$comments_url = new Url($row['path'] . '#com' . $row['id']); 'PATH' => $comments_url()->rel()
mais si le path n'est pas réécrit tu ne pourras rien faire de toute façon.
janus57 Membre non connecté
- Booster Fusée
- Voir le profil du membre janus57
- Inscrit le : 07/12/2007
- Groupes :
- Equipe Assistance
@babos : pour les flux RSS externe tu as prévu un système de cache (celui de PHPBoost ?) ?
Cordialement, janus57
babsolune Membre non connecté
Administrateur
- Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
Il me manque à peu prés 5 ans d'études , je me borne à copier ce qui existe et à adapter à mes besoins. Quand ça bloque, je fais un tour sur http://php.net/docs.php , mais je suis loin d'envisager toutes les éventualités ou nécessités.
Citation :mais si le path n'est pas réécrit tu ne pourras rien faire de toute façon.
En effet, ça ne marche pas si url rewriting n'est pas activée => je mets une alerte/description dans l'admin ?
Est-ce qu'il existe une vérif pour l'activation de l'url rewriting comme pour la présence/activation d'un module? ce qui permettrait de cacher l'option en cas de non activation
Edit: Trouvé dans le deprecated_helper_inc.php
Code PHP :
ServerEnvironmentConfig::load()->is_url_rewriting_enabled()
Citation :pour les flux RSS externe tu as prévu un système de cache (celui de PHPBoost ?) ?
La mise en cache c'est pour améliorer les perf du site, c'est ça ? auquel cas, à la lecture du code, je ne pense pas que ça y soit (récup du menu rss pour pbt3 de Reidlos)
Code PHP :
private function build_external_rss_view() { $tpl = new FileTemplate('HomeLanding/pagecontent/rssreader.tpl'); $rss_number = $this->config->get_rss_xml_nb(); $nb_char = $this->config->get_rss_xml_char(); $time_renew = time() + (60*60); $d_actuelle = date('H:i'); $d_renew = date('H:i', $time_renew); $xml = simplexml_load_file($this->config->get_rss_xml_url()); $items = array(); $items['title'] = array(); $items['link'] = array(); $items['desc'] = array(); foreach($xml->channel->item as $i) { $items['title'][] = utf8_decode($i->title); $items['link'][] = utf8_decode($i->link); $items['desc'][] = utf8_decode($i->description); } $nbr_item = $rss_number <= count($items['title']) ? $rss_number : count($items['title']); $tpl->put_all(array( 'SITE_TITLE' => $this->config->get_rss_site_name(), 'SITE_URL' => $this->config->get_rss_site_url(), )); for($i = 0; $i < $nbr_item ; $i++) { $desc = $items['desc'][$i]; $tpl->assign_block_vars('rssreader',array( 'TITLE_FEED' => $items['title'][$i], 'LINK_FEED' => $items['link'][$i], 'DESC' => substr($desc, 0, $nb_char), )); } $this->view->put('RSS', $tpl); }
Avant la version finale, je comptais qu'un dev regarde de plus près le code du module. je pars du principe qu'en copiant ce qui existe et que le script fonctionne, je ne dois pas être très loin d'une certaine vérité, mais mes lacunes dans le domaine, ne me permette pas d'assurer que le code soit secure ou qu'il réponde à toutes les normes php
Édité par babsolune Le 08/04/2016 à 09h44
babsolune Membre non connecté
Administrateur
- Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
Version alpha 1.5
Fix du bug apostrophe sur les titres et les messages du forum
Ajout d'un bloc Fil RSS pour un site externe
Ajout de la vérification de l'url rewriting activée pour les lastcoms
suppression des tpl de secours : news_feed.tpl, news-last.tpl, forum-feed.tpl
Mise en place du positionnement des blocs
Ajout du nombre de partenaires affichés pour le module web
Edit:
l'introduction de la flexbox peut poser soucis sous ie car déclarée au plus simple : section en
display:flexet
flex-direction:column
, je n'ai pas encore regardé pour affinerLe titre du module est en position 1 et immuable (H1 de la section), de fait tous les autres modules sont placés à partir de la position 2
Si tous les modules sont déclarés sur la même position, l'ordre d'affichage est celui du tpl
Édité par babsolune Le 08/04/2016 à 15h28
vtt64 Membre non connecté
Booster Roquette
- Booster Roquette
- Voir le profil du membre vtt64
- Inscrit le : 16/12/2009
- Site internet
- Groupes :
babsolune Membre non connecté
Administrateur
- Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
J'ai corrigé pour la prochaine version, mais comme je ne vais pas la poster tout de suite, il faut ajouter un truc sur les rss pour que le html du site externe ne soit pas interprété et ainsi éviter les ennuis
dans le HomeLandingHomeController.class.php, dans la partie du rss en bas du fichier
repère
et remplace par
Code PHP :
'DESC' => strip_tags(trim(substr($desc, 0, $nb_char))),
benflovideo Membre non connecté
- Modérateur
- Voir le profil du membre benflovideo
- Inscrit le : 13/03/2010
- Groupes :
- Equipe Modération
- Equipe Communication
Ton module me donne envie de passer en v5
Je vais le tester !
Benji
bricodx Membre non connecté
Booster Bazooka
- Booster Bazooka
- Voir le profil du membre bricodx
- Inscrit le : 15/09/2008
- Site internet
- Groupes :
Ce module m'intéresse beaucoup, du coup je viens de le télécharger et mettre en place.
Malheureusement il m'affiche l'erreur "Une erreur s'est produite lors de l'opération"
Dans les erreurs archivées , il y a ceci :
Code TEXT :
Fatale : invalid query. (ERRNO 1146) Table 'db613627772.phpboost_calendar_events' doesn't existquery: SELECT * FROM phpboost_calendar_events event LEFT JOIN phpboost_calendar_events_content event_content ON event_content.id = event.content_id LEFT JOIN phpboost_member member ON member.user_id = event_content.author_id LEFT JOIN phpboost_calendar_cats cat ON cat.id = event_content.id_category WHERE approved = 1 AND start_date >= 1460152800 ORDER BY start_date LIMIT 3 [0] /kernel/framework/io/db/driver/mysql/MySQLQuerier.class.php:48 - MySQLQuerier->execute(string, array) [1] /kernel/framework/io/db/DBQuerier.class.php:50 - MySQLQuerier->select(string, array, int) [2] /HomeLanding/controllers/HomeLandingHomeController.class.php:447 - DBQuerier->select(string, array) [3] /HomeLanding/controllers/HomeLandingHomeController.class.php:157 - HomeLandingHomeController->events_results() [4] /HomeLanding/controllers/HomeLandingHomeController.class.php:874 - HomeLandingHomeController->build_view() [5] /HomeLanding/phpboost/HomeLandingHomePageExtensionPoint.class.php:38 - HomeLandingHomeController::get_view() [6] /kernel/framework/phpboost/index/PHPBoostIndexController.class.php:49 - HomeLandingHomePageExtensionPoint->get_home_page() [7] /kernel/framework/mvc/dispatcher/UrlControllerMapper.class.php:87 - PHPBoostIndexController->execute(HTTPRequestCustom) [8] /kernel/framework/mvc/dispatcher/UrlControllerMapper.class.php:59 - UrlControllerMapper->do_call() [9] /kernel/framework/mvc/dispatcher/Dispatcher.class.php:67 - UrlControllerMapper->call() [10] /kernel/framework/mvc/dispatcher/DispatchManager.class.php:43 - Dispatcher->dispatch() [11] /index.php:35 - DispatchManager::dispatch(array) [URL] /
et c'est un peu normal puis le module calendar n'est pas installé. Sachant que dans l'admin de HomeLanding, il n'y a aucune option pour le module calendar.
Voilà mon retour du moment.
Merci a babsolune, ce module va être incontournable quand il sera terminé
Fred
vtt64 Membre non connecté
Booster Roquette
- Booster Roquette
- Voir le profil du membre vtt64
- Inscrit le : 16/12/2009
- Site internet
- Groupes :
<a href="http://prntscr.com/aq15bc">print ecran</a>
bricodx Membre non connecté
Booster Bazooka
- Booster Bazooka
- Voir le profil du membre bricodx
- Inscrit le : 15/09/2008
- Site internet
- Groupes :
Fred
babsolune Membre non connecté
Administrateur
- Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
c'est corrigé pour la prochaine, en attendant, si tu veux tester, remet le module calendrier et désactive le. Je suppose que ça fera pareil pour tous les modules officiels manquants
@vtt64 je teste la partie rss avec le site que tu utilises sur ton homecustom (vélo101) mais je galère pour récupérer les images, tu pourrais me passer ton homecustom que je vois comment c'est fait, vu que la récup des images du rss du site fonctionne sur ton site ?
janus57 Membre non connecté
- Booster Fusée
- Voir le profil du membre janus57
- Inscrit le : 07/12/2007
- Groupes :
- Equipe Assistance
@babso : son système de récupère les RSS est un peu "obsolète" (j'utilise un système open-source non maintenu maintenant), j'avais prévu de le re-faire.
Du coup si tu veux je te passerais la version mis à jour ?
Cordialement, janus57
babsolune Membre non connecté
Administrateur
- Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
le mien date de la v3, je ne sais pas trop ce qu'il vaut
janus57 Membre non connecté
- Booster Fusée
- Voir le profil du membre janus57
- Inscrit le : 07/12/2007
- Groupes :
- Equipe Assistance
perso je lui avais fait y a 1an a peu prêt et les dernière bench montrait que mon script prenez 200ms à 800ms à traiter les flux (avec le système de cache pour éviter de se faire bloquer par le site distant), et d'après l'auteur du système de traitement du RSS il existe un meilleur que le sien (qu'il ne maintient plus) et qui serait plus rapide.
J'avais mis quelques jour à respecter les conditions de @vtt64 et quelques jours de plus pour mettre le système de cache (au début j'avais fait sans mais on se rend vite compte que cela n'est pas possible sans cache car le site distant commence à nous bloquer/brider).
Cordialement, janus57
babsolune Membre non connecté
Administrateur
- Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
<ul class="formatter-ul">
<li class="formatter-li">Fix du bug de présence d'un module
</li><li class="formatter-li">Ajout de l'affichage d'un texte s'il n'y a pas d'entrée pour les modules Calendrier, Livre d'or et Derniers commentaires
</li><li class="formatter-li">Ajout du module Galerie
</li><li class="formatter-li">Ajout de la date et heure sur le module Rss
</li><li class="formatter-li">Ajout du lien vers le topic + amélioration du tpl/css pour le forum
</li><li class="formatter-li">Ajout de l'heure et du lien vers l'article dans le module Derniers commentaires
</li></ul>
Pour le module galerie, je récupère les images 'grande taille' dont je limite la taille via le css, ce qui permet plus de souplesse de personnalisation pour ceux qui voudraient les afficher plus grande que les mini., J'ai hésité à mettre la lightbox, mais j'ai préféré envoyer le clic sur les images vers la catégorie qui les contient.
Ma todo liste s’amenuise <img src="/images/smileys/smile.png" alt=":)" class="smiley" />, en théorie, il reste 4 modules à intégrer Contact, FAQ, Pages, Sondages. Pour les 3 derniers, je ne suis pas sûr que ce soit vraiment utile, vous en pensez quoi ?
Pour le module contact, je me suis déjà cassé les dents dessus, vu que ce n'est pas un module "classique" (pas de récupération de données d'une table puisqu'il n'y en a pas pour ce module), mais je le crois indispensable, souhaitez moi bonne chance <img src="/images/smileys/smile.png" alt=":)" class="smiley" />
j1.seth Membre non connecté
- Administrateur
- Voir le profil du membre j1.seth
- Inscrit le : 01/09/2008
- Site internet
- Groupes :
- Chef de Projet
- Equipe Développement
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie