RSS

처음으로 만든 워드프레스 플러그인

13 2월

초보 프로그래밍의 첫 시작을 알리는 “Hello World!”처럼 아주 단순한 플러그인을 만들어 보았다. 물론, 레퍼런스는 있다.^^ 워드프레스에 기본으로 포함된 Hello Dolly을 참고했다.

주요기능은

  1. 인사말을 랜덤하게 추출
  2. 현재 사용자 추출
  3. 테마 페이지 갱신 시 “인사말” + “현 사용자 이름” 출력 (테마 우측 상단)

사용한 액션훅은 wp_head 이다. 훅 이름을 변경하면 다양한 위치나 상태에서 액션을 취할 수 있다. 만약 wp_footer면 페이지 하단에 뿌려진다.

add_action( 'wp_head', 'hello_there' );

액션훅이 발생하면 hello_there 함수가 호출된다.

function hello_there() {
    global $current_user; 
    $chosen = getGreeting().$current_user->display_name; 
    echo "<p id='greeting'>$chosen</p>";
}

hello_there() 함수는 getGreeting()을 호출하여 인사말 목록을 랜덤으로 선택해 반환하고, 사용자 이름을 붙여서 화면에 출력한다.

function getGreeting() {
    $greetings = "Hello~
    Hi!
    Nice to meet you!
    Thank you!
    Thanks!
    Good Morning!
    Good Afternoon!
    Good Evening!
    Good Night~~";

    $greetings = explode( "\n", $greetings );
    return wptexturize( $greetings[ mt_rand( 0, count( $greetings ) - 1 ) ] );
}

글자를 꾸미기 위해 css 함수와 액션훅을 추가했다.

add_action( 'wp_head', 'greeting_css' );
function greeting_css() {
     // This makes sure that the positioning is also good for right-to-left languages
     $x = is_rtl() ? 'left' : 'right';
    echo "
     <style type='text/css'>
       #greeting {
       float: $x;
       padding-$x: 155px;
       padding-top: 5px;
       margin: 0;
       font-size: 15px;
       color:red;
      }
    </style>
    ";
}

[플러그인 실행 화면] : 우측 상단에 인사말과 사용자 이름 출력

wpplugin2

Advertisements
 
 

태그: ,

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

 
%d 블로거가 이것을 좋아합니다: