2011-10-22 3 views
1

Wordpress를 사용하고 있습니다. 나는 http://filmblurb.org이라는 영화 리뷰 웹 사이트를 가지고있다. 내 블로그 게시물의 경우 다른 카테고리의 게시물을 만들려고합니다. '리뷰'카테고리 아래에는 모든 내 리뷰의 메타 정보로 사용되는 '세부 정보'상자가 있습니다. 문제는 "기능"범주 또는 다른 범주의 게시물을 만들려고 할 때 "세부 정보"상자가 여전히 남아있는 경우입니다. 기본적으로 "리뷰"게시물 만 작성하면 다음 코드 시퀀스 만 반환하는 PHP if 문을 만들려고합니다. 나는 Wordpress에서 "get_post_meta"태그를 사용하여 "Write"의 모든 "Review"게시물에 대해이 "Details"박스를 채 웁니다. 샘플 게시물은 여기에서 찾을 수 있습니다 : http://www.filmblurb.org/reviews/97. 아무도 이걸 도와 줄 수 없나요? 감사 드리고 싶군요. 더 설명 할 필요가 있으면 알려주세요.Wordpress에서 PHP 조건부 도움말

<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> 

답변

3
<?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 일 수 있습니다. 추가 참조 확인을 위해 the wordpress codex on the conditional tag "is_category()"

0

몇 가지 옵션이 있습니다.

아마도 가장 좋은 방법은 모든 후 카테고리에 대한 특수 템플릿을 만드는 것입니다. 템플릿이 무엇인지 모르는 경우 여기에서 자세히 알아보십시오. http://codex.wordpress.org/Pages#Page_Templates

다른 방법은 CSS에 있습니다.

body 태그에 shortcode를 입력하면 현재 카테고리 페이지와 관련된 정보가 반환됩니다.

특정 클래스를 사용하면 .box 클래스를 display : none으로 설정할 수 있습니다.

충분히 명확하길 바랍니다.

+0

나는이 값이 대부분 읽을 가치가 없다고 지적합니다. ** 페이지 ** 템플릿은 이유 때문에 그렇게 명명됩니다. 그들은 페이지가 아닌 게시물에 적용됩니다. 이론적으로 .box div는 css로 숨길 수 있지만 카테고리를 기반으로 추가 클래스 또는 ID를 부여해야합니다. 어떤 차례로 is_category 조건부 태그가 필요합니다. 코드 예제를 잘못 설명해 주겠지 만 [shortcodes] (http://codex.wordpress.org/Shortcode_API)가이를 수행 할 수있는 방법을 알지 못합니다. 사실이 답변은 downvote 만받을 가치가 있지만 너무 좋은 하루 보내고 있습니다. –