Programación

Foro WordPress » WordPress » Programación

Un condicional para PHP que corrija esto? (8 mensajes)

Acerca de este hilo

Tags

Etiquetas:

  1. guardafaro

    5.0
    Antiguedad: Oct 2009
    Mensajes: 109

    offline

    Publicado hace 1 año
    #

    Con el código que coloco lo utilizo en varios blog para presentar en el sidebar varios titulares de posts publicados en mis otros blogs, recogiendo el feed. Pero a pesar del condicional inicial < ?php if(function_exists('fetch_feed')), cuando el blog de donde se recoge el feed no está online por alguna circunstancia,en el sidebar del sitio en donde deberían aparecer los títulos se produce un mensaje de error de PHP que hace que, desde ese sitio en adelante ya no se muestre nada en el blog.

    ¿Alguien podría darme una mano y ver que pieza de código añadir para que no suceda este error?

    < ?php if(function_exists('fetch_feed')) {
    // hay que incluir esto
    include_once(ABSPATH . WPINC . '/feed.php');
     // el feed que queremos mostrar
            $feed = fetch_feed('http://nombredelblog.es/feed');
    // especificamos el número de items a mostrar
            $limit = $feed- >get_item_quantity(5);
    // se crea un array con los items
            $items = $feed- >get_items(0, $limit);
    }
    if ($limit == 0) echo '< div >El feed está vacío o no disponible.< /div >';
    else foreach ($items as $item) : ? >
    < div >
    < a href="< ?php echo $item- >get_permalink(); ? >" >
    < ?php echo $item- >get_title(); ? >

    < /div >
    < ?php endforeach; ? >

  2. study

    5.0
    Antiguedad: Feb 2009
    Mensajes: 660

    offline

    Publicado hace 1 año
    #

    despues de crear el objeto feed podrias probar la condicion:

    if (!is_wp_error( $feed ))

    pero aviso que no lo probé

    Como la velocidad de la luz es mas rapida que la del sonido algunas personas parecen brillantes antes de que escuchemos las pelotudeces que dicen.
    Si te apetece visita mi sitio
  3. guardafaro

    5.0
    Antiguedad: Oct 2009
    Mensajes: 109

    offline

    Publicado hace 1 año
    #

    Gracias, intentaré probarlo.

  4. guardafaro

    5.0
    Antiguedad: Oct 2009
    Mensajes: 109

    offline

    Publicado hace 1 año
    #

    No, no funciona ese condicional.

  5. LGrusin

    Moderador
    Antiguedad: Feb 2011
    Mensajes: 1.801

    offline

    Publicado hace 1 año
    #

    ¿Dónde lo has puesto?

    Intenta esto:

    <?php if(function_exists('fetch_feed')) {
    // hay que incluir esto
    include_once(ABSPATH . WPINC . '/feed.php');
    // el feed que queremos mostrar
    $feed = fetch_feed('http://nombredelblog.es/feed');
    if (!is_wp_error( $feed )) {
    // especificamos el número de items a mostrar
    $limit = $feed- >get_item_quantity(5);
    // se crea un array con los items
    $items = $feed- >get_items(0, $limit);
    if ($limit == 0) echo '< div >El feed está vacío o no disponible.< /div >';
    else foreach ($items as $item) : ?>
    <div>
    <a href="<?php echo $item- >get_permalink(); ?>" >
    <?php echo $item- >get_title(); ?>
    </div>
    <?php endforeach;
    }
    }
    ?>

    Revisa bien que al copiar de tu código puede faltar algo.

    Un saludo

  6. metacortex

    5.0
    Antiguedad: Jun 2009
    Mensajes: 193

    offline

    Publicado hace 1 año
    #

    ¿Qué te parece si colocas todo el código dentro del if inicial?

  7. LGrusin

    Moderador
    Antiguedad: Feb 2011
    Mensajes: 1.801

    offline

    Publicado hace 1 año
    #

    ¿Qué te parece si colocas todo el código dentro del if inicial?

    ... tal como ha puesto LGrusin ...

  8. guardafaro

    5.0
    Antiguedad: Oct 2009
    Mensajes: 109

    offline

    Publicado hace 10 meses
    #

    LGrusin, después de tres intentos, FUNCIONA el condicional if (!is_wp_error( $feed ). Algún corchete no estaba yo cerrando o algo. Copie el código tal como lo pusiste y funcionó. Ahora si el feed está roto o la web está desactivada no se muestra nada (por supuesto), pero tampoco se me daña el blog. Muchas Gracias por tu ayuda.

Responder

Debes Identificarte para publicar.

Foro WordPress » WordPress » Programación