Fork me on GitHub

Rapport de message :*
 

RSSFit : images dans flux RSS modules News, SmartSection & MyAlbum

Titre du sujet : RSSFit : images dans flux RSS modules News, SmartSection & MyAlbum
par SpeedAirMan sur 03/04/2007 19:37:31

Bonjour,

j'aimerai que mon flux RSS global, géré par RSSFit et reprenant les flux des modules News, SmartSection et MyAlbum incorporent les images des topics(ou bien, s'il n'y en a pas, le logo du site) ou des miniatures(en ce qui concerne MyAlbum) et que, en cliquant sur l'image, celle ci mène à l'article ou à la page de la photo.

J'aimerai également que, dans tous les titres diffusés dans le flux RSS, ceux ci soient précédés du nom de la section à laquelle l'article ou l'image appartient.
Exemple : une news nommée Quoi de neuf cette semaine ? #4 devrait s'appeler, dans le flux RSS : News : Quoi de neuf cette semaine ? #4 ou bien encore, pour une photo qui se nommerai par exemple Chiwawa contre Dog Allemand, il faudrait que celle ci soit nommée, dans le flux RSS : Photo : Chiwawa contre Dog Allemand


Voici les plugins que j'utilise pour RSSFit :


News
<?php
if( !defined('RSSFIT_ROOT_PATH') ){ exit(); }
class 
RssfitNews{
    var 
$dirname 'news';
    var 
$modname;
    var 
$grab;
    
    function 
RssfitNews(){
    }
    
    function 
loadModule(){
        
$mod =& $GLOBALS['module_handler']->getByDirname($this->dirname);
        if( !
$mod || !$mod->getVar('isactive') ){
            return 
false;
        }
        
$this->modname $mod->getVar('name');
        
$this->module =& $mod;
        return 
$mod;
    }
    
    function &
grabEntries(&$obj){
        
$ret false;
        @include_once 
XOOPS_ROOT_PATH.'/modules/news/class/class.newsstory.php';
        
$myts =& MyTextSanitizer::getInstance();
        if( 
$this->module->getVar('version') >= 130 ){
            @include_once 
XOOPS_ROOT_PATH.'/modules/news/include/functions.php';
            
$news NewsStory::getAllPublished($this->grab0news_getmoduleoption('restrictindex'));
        }else{
            
$news NewsStory::getAllPublished($this->grab0);
        }
        if( 
count($news) > ){
            for( 
$i=0$i<count($news); $i++ ){
                
$ret[$i]['title'] = $myts->undoHtmlSpecialChars($news[$i]->title());
                
$ret[$i]['link'] = XOOPS_URL.'/modules/news/article.php?storyid='.$news[$i]->storyid();
                
$ret[$i]['guid'] = XOOPS_URL.'/modules/news/article.php?storyid='.$news[$i]->storyid();
                
$ret[$i]['timestamp'] = $news[$i]->published();
                
$desc $news[$i]->hometext();
                
$ret[$i]['description'] = $news[$i]->hometext();
                
$ret[$i]['category'] = $this->modname;
                
$ret[$i]['domain'] = XOOPS_URL.'/modules/'.$this->dirname.'/';
            }
        }
        return 
$ret;
    }
}
?>





SmartSection
<?php

if( !defined('RSSFIT_ROOT_PATH') ){ exit(); }
class 
RssfitSmartsection{
    var 
$dirname 'smartsection';
    var 
$modname;
    var 
$grab;
    
    function 
RssfitSmartsection(){
    }
    
    function 
loadModule(){
        
$mod =& $GLOBALS['module_handler']->getByDirname($this->dirname);
        if( !
$mod || !$mod->getVar('isactive') ){
            return 
false;
        }
        
$this->modname $mod->getVar('name');
        return 
$mod;
    }
    
    function &
grabEntries(&$obj){
        
$ret false;
        include 
XOOPS_ROOT_PATH."/modules/smartsection/include/common.php";
        
$items $smartsection_item_handler->getAllPublished($this->grab0);
        if( 
false != $items && count($items) > ){
            for( 
$i=0$i<count($items); $i++ ){
                
$ret[$i]['link'] = $ret[$i]['guid'] = $items[$i]->getItemUrl();
                
$ret[$i]['title'] = $items[$i]->getVar('title''n');
                
$ret[$i]['timestamp'] = $items[$i]->getVar('datesub');
                
$ret[$i]['description'] = $items[$i]->getVar('summary');
                
$ret[$i]['category'] = $this->modname;
                
$ret[$i]['domain'] = XOOPS_URL.'/modules/'.$this->dirname.'/';
            }
        }
        return 
$ret;
    }
}
?>





MyAlbum
<?php

if( !defined('RSSFIT_ROOT_PATH') ){ exit(); }
class 
RssfitMyalbum{
    var 
$dirname 'myalbum';
    var 
$modname;
    var 
$grab;
    
    function 
RssfitMyalbum(){
    }
    
    function 
loadModule(){
        
$mod =& $GLOBALS['module_handler']->getByDirname($this->dirname);
        if( !
$mod || !$mod->getVar('isactive') ){
            return 
false;
        }
        
$this->modname $mod->getVar('name');
        return 
$mod;
    }
    
    function &
grabEntries(&$obj){
        global 
$xoopsDB;
        
$myts =& MyTextSanitizer::getInstance();
        
$ret false;
        
$i 0;
        
$sql "SELECT l.lid, l.cid, l.title, l.ext, l.date, t.description FROM ".$xoopsDB->prefix("myalbum_photos")." l, ".$xoopsDB->prefix("myalbum_text")." t WHERE l.status>0 AND l.lid=t.lid ORDER BY date DESC";
        
$result $xoopsDB->query($sql$this->grab0);
        while( 
$row $xoopsDB->fetchArray($result) ){
            
$ret[$i]['title'] = $row['title'];
            
$link XOOPS_URL.'/modules/'.$this->dirname.'/photo.php?lid='.$row['lid'];
            
$dot ".";
            
$images '<img src="'.XOOPS_URL.'/photos/thumbs/'.$row['lid'].$dot.$row['ext'].'"><br>';
            
$ret[$i]['link'] = $ret[$i]['guid'] = $link;
            
$ret[$i]['timestamp'] = $row['date'];
            
$ret[$i]['description'] =  $images$myts->displayTarea$row['description']);
            
$ret[$i]['category'] = $this->modname;
            
$ret[$i]['domain'] = XOOPS_URL.'/modules/'.$this->dirname.'/';
            
$i++;
        }
        return 
$ret;
    }
}
?>




Quelqu'un a une solution ? Tout en sachant que mon niveau en PHP est assez... mauvais
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

11 Personne(s) en ligne (7 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 11 | Plus ...