Haroop Webagency team BICTOR

원격 및 파견 개발팀분들을 위한 하룹소속 개발자전용 빅터 오픈소스 커뮤니티입니다

이곳은 하룹 개발팀 소속 직원들에 전체 개발기술력 및 전체 평균 능력치 강화를 위한, 빅터팀 리드개발자들에 오픈소스 개발 커뮤니티 공간입니다, 만약 고객이시라면 여기를 이용해주세요.

제목
의료기기 본사 홈페이지, 페이지별 메뉴 다르게 뜨게끔 워드프레스용 소스 하나 짜주실수 있으실까요?ㅠ
작성자
루트
작성일
2022-07-14 14:02
조회
131
답변완료
안녕하세요 의료기기 본사 홈페이지를 순수 워드프레스6.0으로 구축중입니다.
엘리멘토를 이용하면, 페이지별 다르게뜰때, 깨지는 부분이 발생이 되서
헤더쪽을 html+css로 구축해서 연결하면 깨지는 부분이 발생이 안됩니다.
혹시 워드프레스용 페이지별로 메뉴를 다르게끔 하는 그런 소스하나 부탁드려도 될까요?ㅠㅠ
워드프레스는 진짜 홈페이지를 좀 제대로 만들고 하면 할수록 더 어려운거같네용ㅠㅠ
전체 2

  • 2022-07-14 14:15

    안녕하세요 루트님, 순수 워드프레스 같은 경우, wp_nav_menu_args 필터를 이용하셔서 코딩하시면
    어렵지 않게 플러그인을 직접 만드실수있습니다.
    또한 워드프레스의 경우는, 객체지향 프로그래밍에 익숙한 테마개발자나 플러그인개발자 수준이 아닌 이상
    오히려 운영하시다 막히는게 많으실수있으니, 차라리 직관적으로 코딩하는 그누보드같은, 필터 액션이 거의 없는 방식에 php로 만드시는것이 훨씬 좋으실것입니다.

    우선 페이지별로, 미리 짜놓으신 헤더 코드가 작동하게 되시는 플러그인을 짜보자면, 아래와 같습니다.
    wp_nav_menu_args를 이용하고, haroop_wp_nav_menu_args를 이용하시면 됩니다.

    add_filter( 'wp_nav_menu_args', ‘haroop_wp_nav_menu_args' );
    function haroop_wp_nav_menu_args( $args = '' ) {
    // 헤더메뉴위치를 변경합니다.
    if( $args['theme_location'] == 'header' && is_page(array(페이지아이디들을 입력해주세요)) ) {
    $args['menu'] = '12'; //해당 페이지들에 연결 시키고 싶은 메뉴아이디를 입력해주세요
    $args['logo']='aa';
    }

    if( $args['theme_location'] == 'header' && is_page(array('페이지아이디들을 입력해주세요')) ) {
    $args['menu'] = '13'; //해당 페이지들에 연결 시키고 싶은 메뉴아이디를 입력해주세요
    }
    if( $args['theme_location'] == 'header' && is_page(array('페이지아이디들을 입력해주세요')) ) {
    $args['menu'] = '14'; //해당 페이지들에 연결 시키고 싶은 메뉴아이디를 입력해주세요
    }
    if( $args['theme_location'] == 'header' && is_page(array('335','2203')) ) {
    $args['menu'] = '15'; //해당 페이지들에 연결 시키고 싶은 메뉴아이디를 입력해주세요
    }

    return $args;
    }

    위를 플러그인으로 구성해서 활성화하시면 페이지별로 미리 짜놓으신 헤더들이 뜨실겁니다.
    감사합니다, 잘안되시면 또 말씀해주세요 ^^


    • 2022-07-25 12:23

      감사합니다ㅠ 하룹에 본사 개발자분들이 도와주신 덕분에 전부 다 잘 처리할 수 있었습니다ㅠㅠ