WP 템플릿의 플러그인에서 함수를 호출하려면 어떻게 해야 합니까?
캘린더 플러그인을 만들었는데 템플릿 중 하나에 이벤트 목록을 표시하려고 합니다.현재 사용하고 있는 코드는 다음과 같습니다.
include_once(WP_CAL_PLUGIN_DIR.'eventcal.class.php');
$calendar = new EventCalendar();
$events = $calendar->getMultipleEvents('5');
(...)
<table>
<?php foreach($events as $event) : ?>
<tr>
<td><span><?php echo $calendar->formatEventTime($event->startTime,'dm'); ?></span></td>
<td><span><?php echo $calendar->formatEventTime($event->startTime,'time'); ?></span></td>
<td><?php echo $event->name; ?></td>
</tr>
<?php endforeach; ?>
</table>
WP 플러그인을 포함하지 않고 새로운 클래스 인스턴스를 만들지 않고 플러그인 내에서 함수를 호출할 수 있는 방법이 있습니까?
템플릿 내에서 쇼트코드를 실행하려면 이 함수를 사용합니다.do_shortcode('[my-shortcode-handle]')숏코드를 템플릿에서 사용하기 전에 정상적으로 등록해야 합니다(숏코드 API의 WordPress codex 참조).속성, 내부 콘텐츠 등도 여기에 있어야 합니다.
echo do_shortcode( '[my-shortcode foo="bar"]Shortcode content[/my-shortcode]' );
또, 쇼트 코드의 출력만을 반환하기 때문에, 리턴을 에코 하는(또는 적어도 변수에 할당하는) 것도 잊지 말아 주세요.
송신원: http://codex.wordpress.org/Plugin_API
후크는 WordPress에 의해 제공되어 플러그인이 WordPress의 나머지 부분에 '후크'할 수 있습니다.즉, 특정 시간에 플러그인의 함수를 호출하여 플러그인이 동작하도록 설정할 수 있습니다.후크에는 2종류가 있습니다.
- 액션:액션은 실행 중 또는 특정 이벤트가 발생할 때 WordPress 코어가 특정 지점에서 시작하는 후크입니다.플러그인은 액션 API를 사용하여 하나 이상의 PHP 기능이 이러한 지점에서 실행되도록 지정할 수 있습니다.
필터:필터는 WordPress가 데이터베이스에 추가하거나 브라우저 화면으로 보내기 전에 다양한 유형의 텍스트를 수정하기 위해 실행하는 후크입니다.플러그인은 필터 API를 사용하여 특정 유형의 텍스트를 수정하기 위해 하나 이상의 PHP 함수를 실행하도록 지정할 수 있습니다.
행동들
WordPress에서 게시, 테마 변경 또는 관리 패널 페이지 표시와 같은 특정 이벤트에 의해 액션이 트리거됩니다.플러그인은 다음 중 하나 이상을 수행하는 PHP 기능을 실행하여 이벤트에 응답할 수 있습니다.
* Modify database data
* Send an email message
* Modify what is displayed in the browser screen (admin or end-user)
이것을 실현하기 위한 기본적인 순서는 다음과 같습니다(자세한 것은 이하에 설명합니다).
- 이벤트가 발생했을 때 실행할 PHP 함수를 플러그인 파일에 만듭니다.
- add_action()을 호출하여 WordPress의 액션에 접속합니다.
- PHP 기능을 플러그인 파일에 넣고 활성화합니다.
예:
function email_friends($post_ID) {
$friends = 'bob@example.org,susie@example.org';
mail($friends, "sally's blog updated",
'I just put something on my blog: http://blog.example.com');
return $post_ID;
}
WordPress에 연결
함수를 정의한 후 다음 단계는 "훅"하거나 WordPress에 등록하는 것입니다.이를 수행하려면 플러그인 파일의 글로벌 실행 공간에서 add_action()을 호출합니다.
add_action ( 'hook_name', 'your_function_name', [priority], [accepted_args] );
여기서:
hook_name WordPress에서 제공하는 액션 후크의 이름으로, 함수를 연관지을 필요가 있는 이벤트를 나타냅니다.your_function_name:hook_name에 의해 지정된 이벤트에 이어 실행할 함수의 이름.이것은 표준 php 함수, WordPress 코어에 있는 함수 또는 플러그인 파일에서 사용자가 정의한 함수(예: 위에서 정의한 'email_friends')일 수 있습니다.priority 특정 액션과 관련된 함수의 실행 순서를 지정하기 위해 사용할 수 있는 옵션의 정수 인수(기본값: 10).숫자가 작을수록 이전 실행과 일치하며, 우선순위가 동일한 함수는 액션에 추가된 순서대로 실행됩니다.accepted_args: 함수가 허용할 수 있는 인수 수(기본값 1)를 정의하는 옵션의 정수 인수. 일부 후크는 여러 인수를 함수에 전달할 수 있기 때문에 유용합니다.이 파라미터는 릴리즈 1.5.1에서 새롭게 추가되었습니다.
위의 예에서는 플러그인 파일에 다음 행을 입력합니다.
add_action ( 'publish_post', 'email_friends' );
언급URL : https://stackoverflow.com/questions/3781458/how-do-i-call-functions-from-my-plugin-in-wp-template
'programing' 카테고리의 다른 글
| MVC 4 부트스트랩을 사용한 모달폼 편집 (0) | 2023.03.31 |
|---|---|
| 필터링된 결과를 Angular로 강조 표시JS (0) | 2023.03.31 |
| React-Select를 프로그래밍 방식으로 지우거나 재설정하는 방법 (0) | 2023.03.31 |
| 특정 WordPress 페이지에 사용자 지정 PHP 코드 삽입 (0) | 2023.03.31 |
| 정렬되지 않은 목록에 항목을 추가하는 방법정렬되지 않은 목록에 항목을 추가하는 방법jquery 사용 (0) | 2023.03.31 |