it-swarm-ko.tech

왜 그럴까요?

템플릿 태그와 get으로 시작하는 몇 가지 함수가 있습니다. 때로는 다음과 같이 테마로 멋진 것일 수 있습니다.

$title = the_title();

나중에 html을 사용합니다. 이것은 단순한 예제 일 뿐이며 자연스럽게 get_the_title ()과 같은 함수가 있습니다. 하지만 그 기능을 위해서만 작동합니다.

왜 이런 기능이 없는지 궁금하네요.

function get_output() {
    $args     = func_get_args();
    $callback = array_shift($args);
    ob_start();
    call_user_func_array($callback, $args);
    return ob_get_clean();
}

그러면 반환 된 함수로 출력 된 모든 함수를 변환 할 수 있습니다.

$title = get_output('the_title');

왜 그것에 대해 생각 해보지 않았는가? 모든 테마 작성자 또는 해커가 이러한 기능을 활용할 수 있습니까?

3
hakre

이 질문에 대한 직접적인 응답으로, WordPress에는 WordPress 기능에 특별히 적용되지 않기 때문에이 기능을 부분적으로 포함하지 않습니다. 나. WordPress가 아닌 PHP (잠재적 인) 문제입니다.

또한, 일반적인 WordPress 스타일에 반하는 데이터를 반환하는 기능을 제공하지 않는 플러그인 등에 대한 해결 방법을 제공하는 것은 WordPress의 책임이라고 말하지 않습니다.

2
Joe Hoyle

나는 당신의 요청에 대해 get_posts이 WP 답변이라고 주장 할 것입니다. The Loop에서 사용하기 위해 템플릿 태그가 생성되었지만 WP '해커'가 get_posts ()를 대신 사용하고 변수에 $ post-> post_title을 할당하기에 충분합니다. The Loop에 의존하는 것을 멈추기 위해 처음에는 실망 스럽지만 과거로 이동하기는 쉽습니다.

2
kevtrout

일부 테마 개발자에게는 더 쉬울 수도 있으므로 완성 된 방식으로 가져 가야합니다. 하지만 직접 함수를 작성할 수 있습니다.

function get_output($function){
    return call_user_func('get_'.$function);
}

Get_the_title ()을 작성하는 것은 get_output ( 'the_title')을 작성하는 것보다 짧습니다. :)

1
2ndkauboy