Extra Form
PHP PHP 7.2
CMS Rhymix

새로 만들고 있는 사이트에 필요한 애드온을 만들려고 합니다.

 

새로 영상만 올라가는 카테고리를 만들고, 해당 카테고리 번호에서만 애드온의 해상도가 변경되는 방식입니다.

 

그런데 난관에 부딛친게 

$category_srl = Context::get('category');

로는 짧은 주소에서 카테고리 값을 찾지를 못합니다.

 

짧은 주소와 상관없이 카테고리 번호를 얻을 수 있는 방법이 무엇이 있을까요?

 

Context::get('category_srl')를 사용해봤지만, 애드온에서 값을 가져오지 못하는 건 확인했습니다.

 

https://yoyomi.tv/index.php?mid=tube&category=150&document_srl=144

$category_srl = Context::get('category'); 작동함.

Context::get('category_srl') 작동 안함.

 

https://yoyomi.tv/tube/144

$category_srl = Context::get('category'); 작동안함.

Context::get('category_srl') 작동 안함.

 

 

  • profile

    Context::get 은 아마 실제 카테고리로 조회해서 접근한 경우 체크가 될겁니다.
    그냥 문서주소로 접속하면 검출이 안되겠죠.

    흔하게쓰는 도큐먼트 모듈 함수를 써서 찾아내면 될 것 같네요.

    해당문서의 작성자회원번호,닉네임,작성일 등 정보가 모두 담겨 있을테고 카테고리정보도 있을 것 같네요.

  • profile profile
    네 쉽게 구현될까 싶었는데, 말씀하신대로 해야할 거 같네요.
    답변 감사합니다. ^^
  • profile
    // 카테고리가 있으면 불러오고 없으면 문서정보에서 가져옴
    if(Context::get('category')) {
    $category_srl = Context::get('category');
    } else {
    $document_srl = Context::get('document_srl');
    $oDocumentModel = getModel('document');
    $oDocument = $oDocumentModel->getDocument($document_srl);
    $category_srl = $oDocument->get('category_srl');
    }

     

    해결했습니다. ^^

  • profile profile
    $called_position에 따라 다르긴 하지만,
    $oDocument는 Context::get('oDocument') 로도 얻을 수 있습니다.