- Statut : non résolu
- Ce sujet contient 0 réponse, 1 participant et a été mis à jour pour la dernière fois par enseignement, le il y a 16 années et 5 mois.
Affichage de 1 message (sur 1 au total)
-
AuteurMessages
-
3 juin 2008 à 19 h 52 min #460055
Bonjour,
Ma configuration WP actuelle
– Version de WordPress : 1.5.1 mu
– Thème utilisé :
– Plugins en place :
– Nom de l’hebergeur :
– Adresse du site :Problème(s) rencontré(s) :
Hello,
J’ai essayé de créer un widget rss personnalisé (où les utilisateurs n’ont qu’à ajouter le widget à leur thème pour qu’un flux rss déterminé (ex: lemonde.fr) s’affiche.
Mais je ne dois pas m’y prendre correctement.
Voici ce que j’ai jusqu’à présent. Je dois déclarer ce widget mais je n’y arrive …
///hack
function wp_widget_rss_enseignement($args, $number = 1) {
require_once(ABSPATH . WPINC . ‘/rss.php’);
extract($args);
$num_items = 10;
if ( empty($num_items) || $num_items < 1 || $num_items > 10 ) $num_items = 10;
$url = « http://www.lesoir.be/services/rss/belgique/index.xml »;
$rss = fetch_rss($url);
$link = clean_url(strip_tags($rss->channel[‘link’]));
while ( strstr($link, ‘http’) != $link )
$link = substr($link, 1);
$desc = attribute_escape(strip_tags(html_entity_decode($rss->channel[‘description’], ENT_QUOTES)));
$title = ‘lesoir’;
if ( empty($title) )
$title = htmlentities(strip_tags($rss->channel[‘title’]));
if ( empty($title) )
$title = $desc;
if ( empty($title) )
$title = __(‘Unknown Feed’);
$url = clean_url(strip_tags($url));
if ( file_exists(dirname(__FILE__) . ‘/rss.png’) )
$icon = str_replace(ABSPATH, get_option(‘siteurl’).’/’, dirname(__FILE__)) . ‘/rss.png’;
else
$icon = get_option(‘siteurl’).’/wp-includes/images/rss.png’;
$title = « <a class='rsswidget' href='$url' title='" . attribute_escape(__('Syndicate this content')) ."'><img style='background:orange;color:white;border:none;' width='14' height='14' src='$icon' alt='RSS' /></a> <a class='rsswidget' href='$link' title='$desc'>$title</a>« ;
?>
<?php echo $before_widget; ?>
<?php $title ? print($before_title . $title . $after_title) : null; ?>
<?php
if ( is_array( $rss->items ) && !empty( $rss->items ) ) {
$rss->items = array_slice($rss->items, 0, $num_items);
echo ‘<ul>‘;
foreach ($rss->items as $item ) {
while ( strstr($item[‘link’], ‘http’) != $item[‘link’] )
$item[‘link’] = substr($item[‘link’], 1);
$link = clean_url(strip_tags($item[‘link’]));
$title = attribute_escape(strip_tags($item[‘title’]));
if ( empty($title) )
$title = __(‘Untitled’);
$desc = »;
if ( $show_summary ) {
$summary = ‘<div class="rssSummary">‘ . $item[‘description’] . ‘</div>‘;
} else {
if ( isset( $item[‘description’] ) && is_string( $item[‘description’] ) )
$desc = str_replace(array(« n », « r »), ‘ ‘, attribute_escape(strip_tags(html_entity_decode($item[‘description’], ENT_QUOTES))));
$summary = »;
}
echo « <li><a class='rsswidget' href='$link' title='$desc'>$title</a>$summary</li>« ;
}
echo ‘</ul>‘;
} else {
echo ‘<ul><li>‘ . __( ‘An error has occurred; the feed is probably down. Try again later.’ ) . ‘</li></ul>‘;
}
echo $after_widget;
}
// fin du hack
register_sidebar_widget(‘rss-Enseignement’, ‘wp_widget_rss_enseignement’); -
AuteurMessages
Affichage de 1 message (sur 1 au total)
- Vous devez être connecté pour répondre à ce sujet.