Справка по условному выражению PHP на Wordpress - PullRequest
1 голос
/ 23 октября 2011

Я использую Wordpress. У меня есть веб-сайт с обзором фильмов под названием http://filmblurb.org.. Для своих постов в блоге я пытаюсь создавать посты с разными категориями. В категории «Отзывы» у меня есть поле «Подробности», которое служит метаинформацией для всех моих отзывов. Проблема в том, что, когда я пытаюсь создать сообщение, которое имеет категорию «Функции» или что-то еще, поле «Детали» все еще остается. По сути, я хочу попытаться создать оператор PHP if, который будет возвращать следующую последовательность кода только тогда, когда я пишу только «Отзывы». Я использую тег «get_post_meta» в Wordpress, чтобы заполнить это поле «Подробности» для каждого сообщения «Отзывы», которое я пишу. Пример сообщения можно найти здесь: http://www.filmblurb.org/reviews/97. Кто-нибудь может мне помочь в этом? Буду премного благодарен. Дайте мне знать, если мне нужно объяснить больше.

<div class="box">
    <div class="boxheader">Details</div>
    <div class="text">
    <h1>Genre</h1>
    <p><?php echo get_post_meta($post->ID, 'genre', true); ?></p>
    <h1>Rated</h1>
    <p><?php echo get_post_meta($post->ID, 'rated', true); ?></p>
    <h1>Release Date</h1>
    <p><?php echo get_post_meta($post->ID, 'releasedate', true); ?></p>
    <h1>Runtime</h1>
    <p><?php echo get_post_meta($post->ID, 'runtime', true); ?></p>
    <h1>Director</h1>
    <p><?php echo get_post_meta($post->ID, 'director', true); ?></p>
    <h1>Cast</h1>
    <p><?php echo get_post_meta($post->ID, 'cast', true); ?></p>
    <h1>Grade</h1>
    <p><?php echo get_post_meta($post->ID, 'grade', true); ?></p>
    </div>
</div>

Ответы [ 2 ]

3 голосов
/ 23 октября 2011
 <?php if(is_category('reviews')) : ?>
     <div class="box">
         <div class="boxheader">Details</div>
         <div class="text">
             <h1>Genre</h1>
             <p><?php echo get_post_meta($post->ID, 'genre', true); ?></p>
             <h1>Rated</h1>
             <p><?php echo get_post_meta($post->ID, 'rated', true); ?></p>
             <h1>Release Date</h1>
             <p><?php echo get_post_meta($post->ID, 'releasedate', true); ?></p>
             <h1>Runtime</h1>
             <p><?php echo get_post_meta($post->ID, 'runtime', true); ?></p>
             <h1>Director</h1>
             <p><?php echo get_post_meta($post->ID, 'director', true); ?></p>
             <h1>Cast</h1>
             <p><?php echo get_post_meta($post->ID, 'cast', true); ?></p>
             <h1>Grade</h1>
             <p><?php echo get_post_meta($post->ID, 'grade', true); ?></p>
         </div>
     </div>
 <?php endif; ?>

Параметр может быть именем категории, слаг или ID.Для дальнейшей справки проверьте кодекс wordpress на условном теге "is_category ()"

0 голосов
/ 23 октября 2011

У вас есть несколько вариантов для этого.

Лучше всего создать специальный шаблон для каждой пост-категории. Если вы не знаете, что такое шаблоны, узнайте все об этом здесь: http://codex.wordpress.org/Pages#Page_Templates

Другие способы сделать это в CSS.

в теге body вы можете ввести шорткод, который будет возвращать некоторую информацию о вашей текущей странице категории.

Используя определенный класс, вы можете настроить отображение класса .box: нет.

Надеюсь, это достаточно ясно.

...