2012-03-11 2 views
0

맞춤 미디어 센터 웹 사이트를 만들고 있습니다. 나는이를 통해 내 템플릿에 삽입 내 자신의 갤러리를 만들었습니다 첨부 파일이있는 경우 단축 코드 표시

...

<?php echo do_shortcode('[gallery customgal="true"]'); ?> 


그러나 그러나, 경우에, 가끔 내 게시물은 이미지 외에 다른 첨부 파일이있는 것 .

그래서 나는
<?php echo do_shortcode('[attachments]'); ?> 


이 잘 작동합니다 ... 내 게시물에 다른 첨부 파일을 추가하는 EG Attachments 플러그인을 사용하여,이 단축 코드를 추가했습니다. 하지만 내 첨부 단축 코드 위에, 나는 H 태그 제목 ...


<h2>Videos</h2> 

<?php echo do_shortcode('[attachments]'); ?> 
필요하지만 첨부 파일이 내 게시물에 추가되어 있지 않은 경우는 내 문제가있다, 그럼 내가 제목에 붙어있어 그리고 그 아래 아무것도!

이미지가 아닌 첨부 파일이있는 경우 내 짧은 코드 만 표시 할 수 있습니까?

이런 식으로 뭔가 ...


어떤 도움

<?php if (attachmentexists()) { ?> 

    <h2>Other Attachments</h2> 

    <?php echo do_shortcode('[attachments]'); ?> 

<?php } ?> 

은 대단히 감사 감사하겠습니다.

<? 
    if (attachmentexists()) { 
    echo "<h2>Videos</h2>"; 
    echo do_shortcode('[attachments]'); 
    } 
?> 

답변

1

당신이 올바른 생각을 가지고 :

+0

크리스, 고마운 일 :-). 위의 몇 가지 주석을 코드에 추가했습니다. 응답하지 않으려 고하면, 무슨 일이 일어나고 있는지 확실히 알 수 없습니다. 감사합니다. – Joshc

+0

예 - '$ 첨부 파일'은 첫 번째 줄에 단축 코드의 결과로 할당되어 있습니다. 어쨌든 반드시 있어야하지만, 에코가 있었기 때문에 그 문자열은 문자열입니다. 두 번째 줄에는 "$ attachments"가 $ attachments를 부울 (예 : true/false)로 변환한다는 점에서 약간의 "마법"이 있습니다. PHP에서 빈 문자열은 부울로 캐스팅 된 경우'false'입니다. [더 많은 정보는 여기에 있습니다] (http://www.php.net/manual/en/language.types.boolean.php#language.types.boolean.casting). 간단히 말해서, 귀하의 shortcode가 아무것도 반환하지 않으면 (예 :빈 문자열),'if' 문을 실행하지 않습니다. – chrisn

+0

니스! 나는 무슨 일이 일어나고 있는지 이해한다. 나는 미래에이 방법을 시도 할 것이고, 이제 나는 그것이 무엇을 할 수 있는지를 안다. 시간과 도움에 감사드립니다. – Joshc

0

나는 방법을 출력하여 PHP를 귀하의 질문에 아직 무엇인지 확실히 모르겠지만, 변경할 수 있습니다. 당신은, 예를 들어,이 매개 변수를 적용하려면 단축 코드를 수정할 수 있습니다,

<?php $attachments = do_shortcode('[attachments]'); ?> 
<?php if($attachments): ?> 
    <h2>Videos</h2> 
    <?php echo $attachments; ?> 
<?php endif; ?> 

을 다른 방법 : 여기에 가장 좋은 방법은 아마도 변수에 <?php echo do_shortcode('[attachments]'); ?>의 결과를 할당 한 다음이 설정되어 있는지 확인하는 것입니다 제목 [attachments title="Videos"]을 입력하고 짧은 코드 내에서 (동일한) 논리를 수행하십시오.

+0

왜 변경해야합니까? 그가 가진 것은 용납 될 수 있습니다. – chrisn

+0

확실히 작동하지만 형식이 잘못되어 부피가 크다. 스크립트에 더 많은 문자를 추가해야합니다. –

+0

형식이 잘못되었지만 실제로는 개인적인 취향에 동의합니다. 나는 나의 대답에서 사용한 형식을 선호한다. "부피가 큰"만큼 중요하지는 않습니다. 어쨌든 모든 서버 측에서 처리됩니다. – chrisn