wordpress : add_action : 두 번째 파라미터가 함수명이 아닌 배열인 이유
워드프레스 플러그인을 작성하려고 하는데 ops 개념을 사용하는 플러그인이 하나 발견되었습니다. 질문은 add_action 함수의 두 번째 파라미터가 함수 이름이 아닌 배열인 이유입니다.
add_action admin_menu', array(&$this, 'my_menu');
my_menu는 같은 클래스의 함수입니다.도와주세요
감사해요.
두 번째 인수는 콜백이어야 합니다.(그리고add_action
는 내부적으로 사용합니다.
함수의 경우 이름을 문자열로 전달할 수 있지만 오브젝트 메서드에서는 그렇게 할 수 없습니다.
따라서 어레이는 2개의 요소로 전달됩니다.첫 번째는 오브젝트, 두 번째는 호출 메서드입니다.-
array( $object, 'method' )
아, 그리고 그 쓸모없는 '&'를 안전하게 제거할 수 있습니다.PHP4 일수는 지났습니다.
@Thomas John, wordpress org에서도 add_action의 두 번째 인수에 대해서는 아무 말도 하지 않았습니다.그러므로 이제 배열을 두 번째 인수 배열($this, 'method')로 전달할 수 있습니다.
설명: 객체가 클래스를 만들면 컨스트럭터가 자동으로 호출하여 액션이 수행됩니다.
IT부문에 필요한 이유wordpress에서 add_action 메서드로 클래스를 작성 또는 초기화하는 방법(아래의 클래스 체크를 참조)
class Myclass{
public function __construct() {
add_action( 'plugins_loaded', array( $this, 'load_plugin_textdomain' ) );
}
}
add_action()을 사용하여 클래스를 참조합니다.
언급URL : https://stackoverflow.com/questions/6204387/wordpress-add-action-why-the-second-parameter-is-an-array-instead-of-a-funct
'programing' 카테고리의 다른 글
리액트 - 스타일 컴포넌트를 사용한 패싱 소품 (0) | 2023.04.03 |
---|---|
WordPress - 사용자가 로그인하고 있는지 확인합니다. (0) | 2023.04.03 |
반응 16.7 - 반응.SFC는 폐지되었습니다. (0) | 2023.04.03 |
JSON.stringify가 Json 오브젝트에 \와 "를 추가하는 문제 (0) | 2023.04.03 |
JSON의 단일 따옴표와 이중 따옴표 (0) | 2023.04.03 |