Pergunta

Estou curioso por que isso não vai ecoar o HTML; Eu já percorreu as outras questões em SO tendo a ver com eco e de impressão.

Deve ser o PHP loop while na seqüência, mas eu escapado das aspas duplas. Há algo acontecendo mais complexo, ou seja, o erro "objeto da classe WP-consulta não pôde ser convertido para string."

Estou sendo muito simplista com tentando ecoar o PHP?

Editado por alguma formatação (que não queria o trabalho em primeiro lugar).

E, o que eu preciso fazer é repetir o HTML que é gerado pelo circuito de consulta, porque esse é o link para o post wordpress.

<?php $d=date("D"); if (in_array($d, array('Thu','Fri','Sat','Sun')))

echo "The latest post for Thursday, Friday, Saturday, Sunday:

<?php $my_query = new WP_Query('category_name=posts&showposts=1'); ?>

<?php while ($my_query->have_posts()) : $my_query->the_post(); ?>

<a href=\"<?php the_permalink() ?>\" rel=\"bookmark\"><?php the_title(); ?></a>.

<?php endwhile; ?>" ;?>

tanques ', Mark

Foi útil?

Solução

Você não pode usar PHP assim. Tente isto:

$d=date("D");
if (in_array($d, array('Thu','Fri','Sat','Sun'))) {
    echo "The latest post for Thursday, Friday, Saturday, Sunday: ";
    $my_query = new WP_Query('category_name=posts&showposts=1');
    while ($my_query->have_posts()) {
        $my_query->the_post();
        echo "<a href=\";
        the_permalink();
        echo "\" rel=\"bookmark\">";
        the_title();
        echo "</a>";
    }
}

Ou se você preferir esta sintaxe:

<?php
    $d=date("D");
    if (in_array($d, array('Thu','Fri','Sat','Sun'))):
?>
The latest post for Thursday, Friday, Saturday, Sunday:
<?php
        $my_query = new WP_Query('category_name=posts&showposts=1');
        while ($my_query->have_posts()):
            $my_query->the_post();
?>
<a href="<?php the_permalink(); ?>" rel="bookmark"><?php the_title(); ?></a>
<?php
        endwhile;
    endif;
?>

Outras dicas

Você não feche o seu string - que deve ser:

<?php
$d=date("D");

if (in_array($d, array('Thu','Fri','Sat','Sun')))
    echo "The latest post for Thursday, Friday, Saturday, Sunday: ";

$my_query = new WP_Query('category_name=posts&showposts=1');

while ($my_query->have_posts())
{
    $my_query->the_post();
    ?><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a>.<?php
}
?>

A sua formatação não é muito bom btw. Novas linhas não são caros!

o intérprete php pára interpretação nas ?> e considera tudo o que vem depois, como entrada normal. assim toda último código é analisado novamente e não faz parte do eco.

Você abre o script php duas vezes:. <?php só deve ser lá uma vez

<?php ... "A última mensagem para quinta-feira, sexta-feira, sábado, domingo: <?php

Por que você nunca sair da corda?

<?php $my_query = new WP_Query('category_name=posts&showposts=1'); ?>

O código acima é certo preso no meio de sua string.

Ela imprime

The latest post for Thursday, Friday, Saturday, Sunday: <?php  = new WP_Query('category_name=posts&showposts=1'); ?><?php while (()) : (); ?><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a>. <?php endwhile; ?>

que é o que deveria. PHP única analisa em uma passagem.

<?php
$d=date("D");
if(in_array($d, array('Thu','Fri','Sat','Sun')))
  echo 'The latest post for Thursday, Friday, Saturday, Sunday:'.
       ' <?php $my_query = new WP_Query(\'category_name=posts&showposts=1\'); ?'.
       '><?php while ($my_query->have_posts()) : $my_query->the_post(); ?'.
       '><a href="<?php the_permalink() ?'.
       '>" rel="bookmark"><?php the_title(); ?'.
       '></a>. <?php endwhile; ?'.'>';
?>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top