SSamTure.net

워드프레스

워드프레스 위젯 개발 하기

워드프레스 위젯(사이드바)은 사이트를 더욱 다양하게 꾸밀 수 있는 도구 중 하나이다.

tamoxifen citrate

online prescription xenical without

위젯을 통하여 어떤 페이지에서든지 지속적으로 동일한 내용을 방문자에게 제공할 수 있는 장점이 있고, 방문자에게 가이드 역할을 할 수 있다.

예제를 통하여 워드프레스 위젯 개발하는 방법에 대해서 알아보도록 하자.

위젯은 크게 2가지 영역을 만들어야 한다.

하나는 관리자페이지 위젯 메뉴에서 설정을 하는 부분과 또 다른 하나는 외부에서 보여지는 부분이다.

image

image

우선 위젯 제공을 위한 플러그인을 만들도록 하자.

image

WP_Widget 은 워드프레스에서 제공하고 있는 클래스이며, 위젯을 만들기 위해 WP_Widget 클래스를 확장(Extend)해야 한다.

위젯을 만들기 위한 기본 구조는 다음과 같다.

image

이렇게 만들고 위젯 메뉴에 들어가면 아직 위젯이 보이지 않을 것이다. 다음의 소스를 추가해보도록 하자.

image

우선 클래스 생성자에서 위젯의 고유 ID, 위젯의 이름, 위젯의 속성들을 정의한다.

__construct('위젯 고유 ID', '위젯의 이름', array(위젯의 속성들));

그 후 widgets_init 액션 후크에서 해당 위젯을 등록해주면 된다. 위젯 등록 방법은 다음의 함수를 이용하면 된다.

register_widget("위젯클래스명");

소스를 추가 한 후 저장하고 위젯 메뉴로 이동하면 추가한 위젯이 보일 것이다.

image

다음으로 위젯에서 필요한 옵션값을 입력 받는 부분을 구현해보도록 하자.

image

위젯 설정에 필요한 정보입력을 받기 위한 내용은 form()에서 받으면 된다. 하지만 꼭 form()에서 옵션값을 받을 필요는 없다. 만약 설정해야 할 것들이 많으면 별도의 옵션페이지를 만들어 주는 것도 좋다.

위젯 설정에 필요한 데이터는 $instance 라는 배열에 저장이 된다. 따라서 저장된 값을 불러오기 위해서는 $instance 배열을 확인 한 후 출력해주면 된다.

image

이제 form()함수에서 받은 데이터를 저장 및 수정하는 부분을 구현하도록 한다. 저장 및 수정의 구현은 update()함수에서 구현하면 된다.

image

$new_instance 배열은 새로 입력 받은 데이터를 가지고 있는 배열 변수이며, $old_instance 는 데이터베이스에 저장된 예전 값들을 의미한다. 만약 별다른 데이터 수정이 없다면 그대로 return 해주면 된다.

마지막으로 테마 사이드바에서 출력되는 부분을 구현하도록 하자. 이제 마지막 남은 함수인 widget() 함수에서 적절하게 구현해주면 된다.

image

역시 $instance 배열 변수에 데이터베이스에 저장된 값들이 있으며, $args 배열 변수는 위젯의 대한 속성들이 있다. 예를 들면 위의 생성자에서 지정해준 위젯 클래스등이다.

imageimage

위젯 개발에 대해서 알아보도록 하였다. 위젯의 경우 대부분의 데이터는 변하지 않는 경우가 많기 때문에 wp_cache_get() 함수를 적절히 이용하면 더욱 쾌적환 사이트환경을 만들 수 있을 것이다.

wp_cache_get() 함수의 사용 방법은 별도로 다루도록 하겠다.

3 Comments

  1. 떠돌이개발자
    2014/08/08 at 12:05 · Reply

    흠 잘봤습니다. 해당 파일을 만들어서 어디다 올려야 하는지 모르겠네요.
    그부분도 함께 있었음 좋았을것 같네요.

  2. Narcisa
    2014/09/19 at 21:15 · Reply

    This isn’t Obagi Pro-C Serum.

  3. ブランドコピー時計N級品,ブランドコピー激安販売通販専門店日本バッグ・財布
    ※ブランドコピー専門店、ロレックス、ルイ・ヴィトン、ウブロ、カルティエ
    フランク・ミュラーなどの新品、商品は100%の品質保証。
    ※ブランドコピー専門ショップ・時計・バッグ・財布N級品販売通販!
    「信用第一」「お客様第一」という信念を持ち、弊社は商品の値段を安く提供することに成功したため、
    皆様を楽しくお買い物いただけるよう、心を込めて最高なブランドコピー品をご提供しております。 ご利用を心からお待ちしております。
    海外ブランドコピーのブランドコピー バッグ、アクセサリー
    ブランドコピー時計、貴金属の(リサイクル品)のブランドコピー販売・買取
    ホームページ上でのご注文は24時間受け付けております
    ウブロコピー 販売,ウブロスーパーコピー時計特集弊社は正規品と同等品質のウブロコピーN品を低価でお客様に提供します。当店時計はスイス製のムーブメントを採用しています、最先端技術でスーパーコピーを研究し。2023新作続々入荷!お買い得品満載、一見の価値あり! https://www.tentenok.com/product-3665.html

Leave a Reply

Your email address will not be published. Required fields are marked *