질문/조언질답게시판

$b 에 페이지 로드때 마다 숫자를 담게 했습니다.

 

그리고 

<[email protected]($wi->list_type == "ad")-->
    <!--#include("./ad{$b}.html")-->

 

이런식으로 처리하려고 하니..

 

 

ad{$b}.html 이렇게 인식 하네요.

 

$b에 담긴 숫자를 적용하려면 어떻게 바꿔야 하나요?

 

content.html 파일에 작성되어 있습니다.

 

 

  • ?
    $b 변수에 따른 케이스가 많지 않으시면 b값에 따라 switch문이나 if 조건문 써서 불러오는 스킨파일 다르게 하시는게 가장 좋을 것 같아요
  • ? profile
    if 조건문이 많아질 것을 우려해 바꾸려고 하는 건데요. 안되는건가요?
  • profile ?
    https://xe1.xpressengine.com/tip/19728882

    저도 예전에 include에 {$변수명}으로 사용하려다가 안 되어서 정확히는 모르겠지만... 위 글에 의하면 include보다 낮은 단계에서 실행되기 때문이라고 하네요.

    <? ?>로 한 번 써보시겠어요?

    (+) 찾아보니까 <include target="' . $filename . '" /> 같이 ‘.$변수명.’ 방법도 있네요
  • ? profile

    <!--#include("./ad' . {$b} . '.html")-->

    요렇게 하면 되는 거 같은데 맞겠죠?? 감사합니다.

  • ? profile
    앗..... 되는게 아니고 변수가 생략되나 봅니다.

    <!--#include("./ad' . {$b} . '.html")-->

    ad.html 만 계속 불러오고 있었네요....
  • ? profile

    앗.. 실수 가 있었네요..

    {$b} 가 아니고..
    <!--#include("./ad' . $b . '.html")-->
    이렇게 해야 하는거였군요...

     

    이렇게 했는데도.. .  변수가 생략되네요...  흠....

  • profile ?
    <!—include—!> 말고 <include target=“”>으로 쓰는 건 안되시나요? 제 사이트에서는 이렇게 사용하거든요 밖이긴 하지만 방금 잠깐 테스트해봤는데 작동하네요.

    더 자세한 건 제가 이따가 들어가서 다시 확인해보겠습니다
  • ? ?
    <!--#include ... -->는 구형 템플릿 코드고
    <include target=" ... " />는 신형 템플릿 코드인걸로 압니다 ㅎㅎ
  • ? profile
    두가지 다 변수값이 적용안되고 사라지네요.

    <include target="' . $b . '.html" />
    이렇게 해봤는데요.

    .html 스킨이 없다고 에러가 납니다.
  • ?

    <?php
    // $__Context->b :: $b
    $tpl = TemplateHandler::getInstance();
    echo $tpl->compile('xe루트부터 해당파일까지의 경로', 'ad'.$__Context->b.'.html');
    ?>

  • ? profile

    {@ $oTemplate = &TemplateHandler::getInstance()}
    {@ print $oTemplate->compile($path,$b.html)}

    $path 쪽을 어떻게 처리해야 할지 하고..

    요건 해결..
    현재 이렇게 하면..

    adNhtml 로 나옵니다.

    ad는 이미 변수에서 넘어도록 했습니다.

    .html 로 붙게 하려면 어찌 해야 할까요?

     

    Err : '/ad7html' template file does not exists.

  • profile
    허걱...

    {@ $oTemplate = &TemplateHandler::getInstance()}
    {@ print $oTemplate->compile($path,$b)}

    .html 을 빼면 되는거였네요..

    답변 모두 감사합니다. 이제 잘 됩니다.