Risoluzione dei problemi con fetch_feed e SimplePie

29 mar 2011, 20:31:57
Visualizzazioni: 2.97K
Voti: 3

Ho implementato una soluzione molto semplice utilizzando fetch_feed() e SimplePie per recuperare gli elementi RSS che funziona sul mio localhost, ma per qualche motivo is_wp_error() rimane true sul server live. C'è un modo per ottenere un output specifico sulla natura dell'errore in modo da poter lavorare verso una soluzione sul server live?

<?php
  include_once(ABSPATH . WPINC . '/feed.php');
  $rss = fetch_feed( '[rss feed rimosso dall\'esempio]' );
  if (!is_wp_error( $rss ) ) :
    $maxitems = $rss->get_item_quantity(5);
    $rss_items = $rss->get_items(0, $maxitems);
    $isc = 'http://dtd.interspire.com/rss/isc-1.0.dtd';
  endif;
?>
<ul class="featured-products">
  <?php if ( $maxitems == 0) : ?>
    <li>Nessun elemento.</li>
  <?php else : ?>
    <?php foreach ( $rss_items as $item ) : 
      $image = $item->get_item_tags( $isc, 'thumb'); ?>
      <li>...</li>
    <?php endforeach; ?>
  <?php endif; ?>
</ul>
0
Tutte le risposte alla domanda 2
1

aggiungi questo al tuo feed

    $rss = fetch_feed( $url );
    if ( is_wp_error( $rss ) ) {
       echo $rss->get_error_message();  <---questo
    } else {
   // fai qui le tue operazioni
}

Suggerirei anche di installare le estensioni della toolbar di debug, come "debug-bar-extender".

29 mar 2011 21:48:46
Commenti

Il nome di dominio che stavo cercando di accedere è un alias di un altro nome di dominio. Prelevando il feed dal dominio finale ho ottenuto con successo i risultati. La tua risposta mi ha aiutato a raggiungere questa consapevolezza. Inoltre, seguendo il tuo/i suggerimento/i mi sono imbattuto in Core Control, che mi ha permesso di monitorare le richieste HTTP dal mio server e i loro stati.

Sampson Sampson
29 mar 2011 22:44:06
0

Questo potrebbe essere dovuto alla deprecazione di rss-functions.php. Controlla questo errore impostando wp-errors nel file di configurazione del tuo sito live su true. Potresti quindi riuscire a vedere il problema. Non dimenticare di reimpostarli su false rapidamente dopo il controllo.

Utilizza wp-includes/rss.php invece

5 lug 2016 18:54:10