Почему возникает синтаксическая ошибка unexpected 'endwhile' (T_ENDWHILE) в этом шаблоне?

2 апр. 2014 г., 18:08:08
Просмотры: 17.3K
Голосов: 2

Я пытаюсь вывести форму, когда пользователь авторизован, но получаю в браузере следующую ошибку при загрузке кода:

syntax error, unexpected 'endwhile' (T_ENDWHILE) in

Мой код:

<?php
/*
Template Name: Customers
*/

get_header(); ?>

    <div id="primary" class="site-content">
        <div id="content" role="main">

            <?php while ( have_posts() ) : the_post(); ?>
                <?php get_template_part( 'content', 'page' ); ?>
                <?php if (is_user_logged_in()):

echo '<form type="post" action="" id="newCustomerForm"> ';

echo '<label for="name">Имя:</label>';
echo'<input name="name" type="text" />';

echo'<label for="email">Email:</label>';
echo'<input name="email" type="text" />';

echo'<label for="phone">Телефон:</label>';
echo'<input name="phone" type="text" />';

echo'<label for="address">Адрес:</label>';
echo'<input name="address" type="text" />';

echo'<input type="hidden" name="action" value="addCustomer"/>';
echo'<input type="submit">';
echo'</form>';
echo'<br/><br/>';
echo'<div id="feedback"></div>';
echo '<br/><br/>';

else:
echo 'Извините, только зарегистрированные пользователи могут просматривать эту информацию';
?>

            <?php endwhile; // конец цикла ?>

        </div><!-- #content -->
    </div><!-- #primary -->

<?php get_sidebar(); ?>
<?php get_footer(); ?> 
0
Все ответы на вопрос 2
0

Вы пропустили <?php endif; ?>

[...]

else:
echo 'Извините, только зарегистрированные пользователи могут просматривать эту информацию';

endif;

<?php endwhile; // конец цикла. ?>

[...]
2 апр. 2014 г. 18:25:34
0

Вы забыли завершить оператор if. Вот рабочий вариант:

   <div id="primary" class="site-content">
        <div id="content" role="main">

            <?php while ( have_posts() ) : the_post(); ?>
                <?php get_template_part( 'content', 'page' ); ?>
                <?php if (is_user_logged_in()):

echo '<form type="post" action="" id="newCustomerForm"> ';

echo '<label for="name">Имя:</label>';
echo'<input name="name" type="text" />';

echo'<label for="email">Email:</label>';
echo'<input name="email" type="text" />';

echo'<label for="phone">Телефон:</label>';
echo'<input name="phone" type="text" />';

echo'<label for="address">Адрес:</label>';
echo'<input name="address" type="text" />';

echo'<input type="hidden" name="action" value="addCustomer"/>';
echo'<input type="submit">';
echo'</form>';
echo'<br/><br/>';
echo'<div id="feedback"></div>';
echo '<br/><br/>';

else:
echo 'Извините, только зарегистрированные пользователи могут видеть эту информацию';
?>

            <?php  endif;?>
            <?php endwhile; // конец цикла ?>


        </div><!-- #content -->
    </div><!-- #primary -->

<?php get_sidebar(); ?>
<?php get_footer(); ?> 
2 апр. 2014 г. 18:25:58