KBoard 와 Quform 연동문제

안녕하세요.

다름이 아니라 KBoard 와 Quform 간 연동을 성공하긴했습니다.

방법은 Quform 플러그인에 Database라는 폼 셋팅 안에 있는곳에서 KBoard의 Database 테이블을 불러와서

KBoard의 Database 필드에 맞춰서 값을 넣어주었습니다.

그래서 게시판을 보면은 Quform 에서 제출한 글이 KBoard에 잘 나타납니다.

 

그러나 문제는 KBoard의 본인 글만 보기 기능을 활성화 시키면 본인 글이 게시판에서 확인되지 않았습니다.

그래서 원인을 알아보니 KBoard의 데이타 테이블중 member_uid라는 값이 들어가지 않더군요.

현재 0으로 들어가서 다 볼수있는 게시판 리스트 설정에서는 나오는것 같습니다.

좀더 알아보니 member_uid 필드는 wp_users 테이블의 ID 필드값이 들어가서 현재 로그인한 사용자와 필드 값이 매칭 되었을때

나타내 주고 있는 걸로 생각이 듭니다.

저의 능력으로는 이 ID필드값을 Quform에 가져와서 넣기 어려울것이라고 판단되는데

혹시 "본인 글만 보기 기능"의 구동을 wp_users 테이블의 user_login 필드와 wp_kboard_board_content 테이블의 member_display 필드 매칭으로 할 수 있을지 궁금합니다.

도움을 주실수 있으시다면 알려주시면 감사하겠습니다.

긴글 읽어 주셔서 고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
  • 안녕하세요~^^

    wp_kboard_board_content 테이블의 member_display 필드는

    워드프레스 사용자 정보에 "공개적으로 표시할 이름" 설정이 있습니다.

    이 설정을 기준으로 홈페이지에서 사용자 이름을 표시하고 있습니다.

    member_display의 값이 중복된 회원이 있을 수 있기 때문에

    user_login 필드와 member_display 필드로 매칭 하여 구현하기 어려울 듯합니다.

     

    따라서 wp_users 테이블의 ID 필드와 wp_kboard_board_content 테이블의 member_uid 필드로

    구현하셔야 할 듯합니다.

     

    저희 쪽에서 Quform 플러그인을 분석해보지 않아서 정확한 답변을 드리긴 어렵지만

    wp_users 테이블의 ID 값은 워드프레스 내장 함수인

    get_current_user_id()로 호출할 수 있습니다.

    아래의 링크를 참고해보세요.

    https://developer.wordpress.org/reference/functions/get_current_user_id/

    고맙습니다.

  • 해결 했습니다. 다른 분들도 할수있도록 내용 공유 합니다.

    소스 추가 위치입니다.

    /www/wp-content/plugins/iphorm-form-builder/includes/common.php

    이 파일 끝줄에

    function my_get_parameter($value)
    {
        return get_current_user_id();
    }
    add_filter('iphorm_element_value_myparam', 'my_get_parameter');

     

    이 소스를 추가합니다.

     

    그리곤 워드프레스 큐폼 플러그인 관리자 화면으로 들어와서

    폼 빌더에서 보면 More에 Hidden 필드를 추가 합니다.

    추가한 Hidden 필드에 셋팅에 들어가보면은 Save value to the database 체크하고, Dynamic default value도 체크 를 합니다.

    체크를 하면 Parameter name 에 아까 추가한 필터 이름인 myparam을 입력 한후 저장합니다.

    Hidden 필드의 라벨은 myNum으로 하겠습니다(원하는거 사용가능)

    다시 폼 자체 setting에서 Database 탭으로 가서

    Use WordPress database 체크하고 Database table에 wp_kboard_board_content 테이블에 저장하기 위에

    입력하고 하단 Database field를 테이블필드를 맞춰서 입력값들을 넣어줍니다.

    그리곤 중요한 본인 글만 보기를 하기위해선 member_uid를 아까 만든 myparam이 들어갈수 있게 해야되는데 이 필드에 보면은 아까 추가한 라벨 myNum을 Insert variable선택하는 곳을 눌러 찾아서 넣어주면 됩니다.

    그럼 일단은 본인글만 보기가 잘 작동하는걸 확인할수있습니다.

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