Errore di sintassi: fine file inaspettato in PHP - Come risolverlo

25 apr 2014, 00:37:33
Visualizzazioni: 16.6K
Voti: 0

Sto ricevendo questo errore dopo aver caricato la mia pagina PHP:

Parse error: syntax error, unexpected end of file in /Applications/XAMPP/xamppfiles/htdocs/wordpress2/wp-content/themes/annonciation/page-42.php on line 77

Ho capito che significa che ho aperto una parentesi o una graffa da qualche parte e non l'ho chiusa, ma non riesco a trovarla per nessuna ragione! Ecco il mio codice:

<?php get_header();?>
<div id="container">
<!-- Glossario -->
<p class="titrep" style="padding-top:192px;">- Glossario -</p>

<div id="alphabet">
  <ul>
    <?php
foreach(range('A','Z') as $i) {?>
 <li>
  <?php echo $i;?>
 </li> 

<?php

if($i=='Z')
      {
        break;
      }
    else{
    ?>
    <li>.</li>
    <?php }
  }

?>
  </ul>
</div>

<div id="mots">
<?php //$test=new WP_Query(array('post_type'=>'mots')); ?>

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

<?php 

$args = array(
    'post_type'=> 'mots',
    'lettres'  => 'alpha',
    'order'    => 'ASC'
    ); 

$the_query = new WP_Query( $args );
if($the_query->have_posts() ) : {
  while ( $the_query->have_posts() ) : $the_query->the_post(); 

 //del codice che sicuramente non causa l'errore (l'ho rimosso e ricevo ancora l'errore)

 endwhile;
}?>

</div>
<?php get_footer(); ?>

Quale potrebbe essere il problema?

2
Commenti

Quale codice si trova sulla Linea 77? E dovrebbe essere letters invece di lettres nel tuo secondo argomento di WP_Query?

Howdy_McGee Howdy_McGee
25 apr 2014 00:49:55

la linea 77 è la fine del mio documento, quindi non c'è nulla lì, e no, non dovrebbe essere letters, è così che ho chiamato la mia tassonomia in wordpress

user1438482 user1438482
25 apr 2014 01:07:52
Tutte le risposte alla domanda 3
0
if($the_query->have_posts() ) : {

Parentesi graffe o sintassi con due punti/fine? Scegline una.

Ecco anche della lettura consigliata.

25 apr 2014 02:40:56
0

Vorrei solo aggiungere alle due risposte già date su questo argomento. È importante sapere che se utilizzi

if($the_query->have_posts() ) :

dovrai chiuderlo con

endif;

altrimenti otterrai lo stesso errore di analisi sintattica descritto.

25 apr 2014 08:44:47
0

Ecco la documentazione di riferimento per il Loop in WordPress, da cui puoi vedere che se vuoi usare : allora non è necessario usare {}. Puoi usare uno dei due alla volta.

25 apr 2014 07:44:20