0
if/else foreach가 여러 메소드에서 반복되었으므로이를 추상화하기로 결정했지만 복잡한 논리로 인해 막혔습니다.php에서 추상 콜백 메소드를 만들고 임의의 수의 매개 변수를 전달합니다.
each_cpt
방법은 다음과 같습니다
private function each_cpt($callback) {
//if (isset($cpts)) {
//foreach ($cpts as $cpt) {
//if ($cpt['post_type'] == $post_type) {
return $callback($cpt);
//}
//}
//}
}
문제는 가끔 콜백을 호출에서 추가 데이터를 전달하려는 것입니다. 예 :
/**
*
*
* @since 1.0.0
*/
public function vehicle_post_type_link_id($url, $post) {
$this->each_cpt(function($cpt){
return home_url($cpt['slug'] . '/' . $post->ID . '/');
});
return $url;
}
유의 사항 $post->ID
콜백이 필요합니다. 그러나 이것은 임의적이며 다른 방법은 $post->ID
이 필요하지 않습니다. 그렇다면 어떻게하면 내 상황을 다루는 적절한 추상적 방법을 만들 수 있을까요?
굉장! '$ this' info에 +1하십시오. –