계층형 카테고리를 다른 페이지에 표시

안녕하세요,
한 게시판의 tree-select 형식의 계층형 카테고리를 워드프레스의 다른 페이지에서 출력할 방법이 있는지 궁금합니다.

 

좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    남겨주신 내용만으로는 어떤 내용인지

    정확히 이해하기가 어렵습니다.

     

    조금 더 자세히 작성해주시겠어요?

    고맙습니다.

  • A게시판에 계층형 카테고리로 지역을 추가했습니다.

    서을 - 강남, 서울 - 종로, 경기 - 수원 .... 이런식입니다.

    케이보드 리스트페이지에는 불러오는 코드가 있어서 쉽게 설정했습니다.

    이 지역 카테고리 데이터를 워드프레스의 다른페이지에 그대로 보여주려고합니다.

    별도의 '지역 목록' 페이지에 접속하면 A게시판의 계층형 카테고리로 설정한 지역 목록이  tree-select 형식으로 나오게끔 하려합니다.

     

     

  • 특정 카테고리의 리스트만 다른 페이지에 표시하는 것은

    현재 제공되고 있는 기능이 아닙니다.

     

    다만 게시판의 형태를 유지하며 보여주고자 하면

    iframe을 이용해볼 수도 있을 듯 합니다.

     

    게시판 관리->고급설정->고급 사용자용 고유주소 사용하기를 하시면

    아이프레임에 넣을 수 있는 링크가 표시됩니다.

     

    해당 링크를 클릭하면 게시판이 표시되는데

    원하시는 카테고리를 클릭한 후 표시된 주소를 iframe 주소에 입력해보시겠어요?

     

    iframe 에 관한 가이드는

    아래 링크에서 확인하실 수 있습니다.

    https://developer.mozilla.org/ko/docs/Web/HTML/Element/iframe

     

    게시판 형태가 아닌 다른 형태를 원하신다면

    wpdb를 이용, 쿼리문을 작성하여 데이터를 불러오셔야 합니다.

     

    wpdb에 관한 가이드는

    아래 링크에서 확인하실 수 있습니다.

    https://developer.wordpress.org/reference/classes/wpdb/

    고맙습니다.

  • $kmap_category_query= "
        SELECT a.value
        FROM `wp_kboard_board_meta` AS a
        WHERE a.board_id = 8 AND a.key = 'tree_category'
    ";
    $kmap_category_results = $wpdb->get_results($kmap_category_query, ARRAY_A);
    참고하여 이런식으로 불러왔더니 print_r로 출력하면 아래와 같이 나옵니다.
     
    Array ( [0] => Array ( [value] => a:246:{i:0;a:3:{s:2:"id";s:13:"62f0d6bff6f6c";s:13:"category_name";s:6:"서울";s:9:"parent_id";N;}i:1;a:3:{s:2:"id";s:13:"62f0f170b7d5a";s:13:"category_name";s:6:"강남";s:9:"parent_id";s:13:"62f0d6bff6f6c";}i:2;a:3:{s:2:"id";s:13:"62f0f179b7d5b";s:13:"category_name";s:6:"강동";s:9:"parent_id";s:13:"62f0d6bff6f6c";}i:3;a:3:{s:2:"id";s:13:"62f0f17eb7d5c";s:13:"category_name";s:6:"강북";s:9:"parent_id";s:13:"62f0d6bff6f6c";}i:4;a:3:{s:2:"id";s:13:"62f0f182b7d5d";s:13:"category_name";s:6:"강서";s:9:"parent_id";s:13:"62f0d6bff6f6c";}i:5;a:3:{s:2:"id";s:13:"62f652c4238c8";s:13:"category_name";s:6:"관악";s:9:"parent_id";s:13:"62f0d6bff6f6c";}i:6;a:3:{s:2:"id";s:13:"62f652d3238c9";s:13:"category_name";s:6:"광진";s:9:"parent_id";s:13:"62f0d6bff6f6c";}i:7;a:3:{s:2:"id";s:13:"62f652d8238ca";s:13:"category_name";s:6:"구로";s:9:"parent_id";s:13:"62f0d6bff6f6c";}i:8;a:3:{s:2:"id";s:13:"62f652da238cb";s:13:"category_name";s:6:"금천";s:9:"parent_id";s:13:"

     

    깔끔한 배열 형태로 가져오려면 어떻게 해야 하는지요? 

     

     

  • 직렬화된 데이터를 배열로 확인하시려면

    unserialize 함수를 사용하시면 됩니다.

     

    받아오신 데이터를 $a 라는 변수에 담았을 때

    print_r(unserialize($a[0][value]));

    과 같이 하시면 직렬화된 데이터를 배열로 확인하실 수 있습니다.

     

    unserialize에 관한 가이드는 아래 링크에서 확인하실 수 있습니다.

    https://www.php.net/manual/en/function.unserialize.php

    고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요