참고한 사이트는 이쪽입니다.

https://opentutorials.org/module/3774/23355

 

여기서 

#추가(2020-04-04)

위 코드에서 여러개의 게시판 mid에서 게시물을 불러오고 싶을 때는,

$mid = array('qna','share');

mid에서 array 를 사용하면 됩니다.

 

라고 되어 있길래 그대로 따라했습니다만 array 부분에서 오류가 난다고 에러 메시지가 뜹니다

 

그래서 라이믹스 기능 중 통합게시판 기능을 이용하여 원하는 게시판을 다 몰아넣은 뒤

그 게시판의 mid를 넣는 실험을 해보았습니다만

전혀 되지 않더군요....

 

제가 짐작하기론 라이믹스의 통합게시판은 그저 글을 모아서 보여줄 뿐, 실제로 그 게시판의 글이 아니라서 그런 것 같습니다...

 

결론적으로 여러 개의 게시판 mid에서 불러오기 위해서 

array('')이 방법 말고 또 뭐가 있을까요??

 

 

 

  • Lv36

    정확히 어떤 코드를 쓰셨고, 어떤 에러메시지가 뜨나요?

    특히 에러메시지를 공개하지 않으시면 원인 파악이 어렵습니다.

     

    링크하신 글은 기본적인 따옴표도 몇 군데 누락되었고,

    똑같은 쿼리를 두 번 세 번 하고, 디버그 코드가 그대로 남아 있는 등

    그대로 사용하기에는 곤란할 것 같습니다.

  • Lv36 ? Lv2
    {@
    $mid = board_BbmC70;
    $oModuleModel = getModel('module');
    $module_srl = $oModuleModel->getModuleSrlByMid($mid);

    $args = new stdClass();
    $args->module_srl = $module_srl;
    $args->list_count = 8;

    if(!$grant->manager) :
    $args->member_srl = $logged_info->member_srl;
    endif;

    $list = executeQuery('document.getDocumentList',$args)->data;
    }
    <ul id="ticker ">
    <li loop="$list => $key, $val"><a href="{$val->document_srl}" title="{$val->title}">{$val->title} [{$val->comment_count}]</a></li>
    </ul>


    이걸 그대로 복붙해서 썼고 mid = 이 부분만 저 array 부분을 참고해서 넣고 싶은 게시판 mid를 넣어줬습니다...

    에러 메시지는

    TypeError #0 "Illegal offset type in isset or empty" in files/cache/addons/pc.php on line 48\n#0 /opt/bitnami/apache/htdocs/classes/display/DisplayHandler.class.php(77): include()\n#1 /opt/bitnami/apache/htdocs/classes/module/ModuleHandler.class.php(1222): DisplayHandler->printContent()\n#2 /opt/bitnami/apache/htdocs/index.php(52): ModuleHandler->displayContent()'

    이렇게 떴습니다
  • ? Lv2 Lv36

    $mid라고 쓰신 2군데 모두 다른 이름으로 바꿔보세요. 예) $mid_list

     

    이 이상한 가이드를 따라하신 분들 때문에 동일한 오류가 발생한 사례가 또 있네요.

    https://github.com/rhymix/rhymix/issues/2084#issuecomment-1448149351

  • Lv36 ? Lv2
    알려주셔서 감사합니다ㅎㅎ
  • Lv23
    저거 코드자체가 님이 생각하는 목적이랑 똑같은 팁인지부터 자세히 남겨주셔야 확인이 가능해요.
    저건 위젯에서 게시글리스트를 가져온다고 되어있는데 실제로 그냥 하나의 게시판에 여러게시글을 가져오고 싶다 라는 단순한 이유가 될 수 있거든요.

    이경우에는 라이믹스 기능 설정으로만 해결가능한 경우도 있고 특정 조건이 필요한 경우 타임라인 모듈을 사용하거나. 등등 방법이 다양하게 나뉠수 있습니다.

    정확하게 어떤상황에서 어디에서 뭔가를 하고 싶다라는 내용을 자세히 남겨주시고 어떤 코드를 어디에 어떻게 따라 해봤는지 남겨주세요..ㅎㅎ
  • Lv23 ? Lv2
    리스트 하단에 추천글과 연동된 작은 표를 만들고 싶었는데
    최신글 불러오기에 추천수 조건을 넣으면 되겠구나! 싶어서 _list.html의 footer 쪽에 넣었습니다


    {@
    $mid = board_BbmC70;
    $oModuleModel = getModel('module');
    $module_srl = $oModuleModel->getModuleSrlByMid($mid);

    $args = new stdClass();
    $args->module_srl = $module_srl;
    $args->list_count = 8;

    if(!$grant->manager) :
    $args->member_srl = $logged_info->member_srl;
    endif;

    $list = executeQuery('document.getDocumentList',$args)->data;
    }
    <ul id="ticker ">
    <li loop="$list => $key, $val"><a href="{$val->document_srl}" title="{$val->title}">{$val->title} [{$val->comment_count}]</a></li>
    </ul>


    이걸 그대로 복붙해서 썼고 mid = 이 부분만 저 array 부분을 참고해서 넣고 싶은 게시판 mid를 넣어줬습니다...

    에러 메시지는

    TypeError #0 "Illegal offset type in isset or empty" in files/cache/addons/pc.php on line 48\n#0 /opt/bitnami/apache/htdocs/classes/display/DisplayHandler.class.php(77): include()\n#1 /opt/bitnami/apache/htdocs/classes/module/ModuleHandler.class.php(1222): DisplayHandler->printContent()\n#2 /opt/bitnami/apache/htdocs/index.php(52): ModuleHandler->displayContent()'

    이렇게 떴습니다
  • ? Lv2 Lv15
    $mid 이 부분을 $s_mid 등으로 다른 이름으로 변경하시면 됩니다.
    XE가 업데이트되면서 기존에는 mid 저렇게 써도 동작이 됐던 부분이 라이믹스 코어에서 사용하는 mid 부분이랑 충돌나면서 저렇게 쓰면 안되더군요.
  • ? Lv2 Lv23
    mid 변수이름을 아래 이온디님처럼 바꾸신다음 실제값을 따옴표에 감싸주세요
  • Lv15
    근데 질문자님 의도에 맞게 하려면 위젯으로도 충분히 구현이 가능합니다.. 저 코드는 위젯 없이 구현하는 방법을 소개한 팁인데요 어려우시면 쉽게 위젯 생성하시면 됩닏.
  • ? Lv2
    다들 친절하게 알려주셔서 감사합니다!!