Что не так с этим оператором php if с 3 условиями? - PullRequest
0 голосов
/ 30 июня 2011

Следующий оператор if имеет 3 условия:

<?php if ( is_archive() ) : ?>

    <?php $topic_tag_term = get_query_var( 'term' ); ?>

    <?php // Display the top topics of current forum
        $args = array(
            'post_type' => 'topic',
            'posts_per_page' => '3',
            'topic-tag' => $topic_tag_term,
            'r_sortby' => 'highest_rated',
            'r_orderby' => 'desc',
            'order' => 'DESC'
        );
    ?>

    <?php $term = $wp_query->queried_object; ?>
    <p>The following are a list of topic tagged as <strong><?php echo $term->name ?></strong>.</p>

    <?php if ( bbp_current_user_can_access_create_topic_form() ) : ?>

        <a id="new-entry" href="<?php echo home_url( '/' ); ?>/create-topic">Start a new topic</a>

    <?php endif; ?>

<?php if ( is_page_template() ) : ?>

    <?php // Display the top topics of current forum
        $args = array(
            'post_type' => 'topic',
            'posts_per_page' => '3',
            'r_sortby' => 'highest_rated',
            'r_orderby' => 'desc',
            'order' => 'DESC',
            'meta_key' => '_bbp_reply_count',
            'meta_value' => '1',
            'meta_compare' => '<'
        );
    ?>

<?php else : ?>

    <?php // Display the top topics of current forum
        $args = array(
            'post_type' => 'topic',
            'posts_per_page' => '3',
            'post_parent' => $post->ID,
            'r_sortby' => 'highest_rated',
            'r_orderby' => 'desc',
            'order' => 'DESC'
        );
    ?>

<?php endif; ?>

Почему-то этот код ломает мою страницу.

Что с ним не так?

Ответы [ 3 ]

5 голосов
/ 30 июня 2011
<?php if ( is_page_template() ) : ?>

должно быть

<?php elseif ( is_page_template() ) : ?>

, по крайней мере, это ошибка, которую я вижу.

1 голос
/ 30 июня 2011

Двоеточия после вашего if (testcase) не должны быть там.Я думаю, что вы путаете использование ?

Проверьте руководство: здесь

Без обид, но все эти <?php ?> в каждой строке - просто чепуха

0 голосов
/ 30 июня 2011

Эта строка не имеет точки с запятой в конце.

<strong><?php echo $term->name ?></strong>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...