duanaigua4033 2013-11-22 19:48
浏览 290
已采纳

解析错误:语法错误,WordPress主题中意外的'endif'(T_ENDIF)

This bit of code is for displaying related posts and resides in my includes folder.

I have recently switched from a local development environment on a Mac (using MAMP) to using Windows with WAMP.

Suddenly this error is occurring in this block of code. It did not occur on my local Mac environment, nor does it occur when testing live.

Parse error: syntax error, unexpected 'endif' (T_ENDIF)

The error specifically points to the second to last endif. If I remove it the same error is thrown pointing to the last endif in the code.

Any ideas? I tried removing both of the specified endif; statements and it throws the following error instead:

Parse error: syntax error, unexpected end of file

<?php  
  $orig_post = $post;  
  global $post;  
  $tags = wp_get_post_tags($post->ID);  
?>
<?php if ($tags):  ?>
<?php  
  $tag_ids = array();  
  foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;  
  $args=array(  
  'tag__in' => $tag_ids,  
  'post__not_in' => array($post->ID),  
  'posts_per_page'=>3, // Number of related posts to display.  
  'caller_get_posts'=>1 ,
  'post_type' => array( 'post', 'featured-wedding' )
  );  

  $my_query = new wp_query( $args );  
?>
<?php if($my_query->have_posts()): ?>  
    <aside class="related group">
      <h2>You May Also Like:</h2>
      <?php while( $my_query->have_posts() ) : $my_query->the_post(); ?>

        <a href="<? the_permalink()?>">
            <!-- thumbnail -->
            <?php the_post_thumbnail(array(175,175)); ?>
            <!-- post title -->
            <?php if ( 'featured-wedding' == get_post_type() ) : ?>
              <h1>Featured Wedding: <?php the_title(); ?></h1>
            <?php else: ?>
              <h1><?php the_title(); ?>: <?php if (function_exists('the_subheading')) { the_subheading('<span>', '</span>'); } ?></h1>
            <?php endif; ?>
        </a>    

      <? endwhile; ?>
    </aside> 
<?php endif; ?>
<?php  
  $post = $orig_post;  
  wp_reset_query();  
 ?>  

<?php endif; ?>
  • 写回答

2条回答 默认 最新

  • dousongxuan7507 2013-11-22 19:51
    关注

    short_open_tag is probably not enabled in php.ini. Change:

      <? endwhile; ?>
    

    To:

      <?php endwhile; ?>
    

    And you should change all other <? to <?php.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 为什么我按照电路图做出的仿真和实物都不能使用
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度
  • ¥15 vue3页面el-table页面数据过多
  • ¥100 vue3中融入gRPC-web