1
이라는 단어를 사용하여 메뉴 파트 li
다음에 템플릿 파트를 추가하지만 템플릿 파트를 전체 메뉴 구조 위에 삽입합니다. 여기에 내가 $output
에 다른 HTML을 추가 할 때 예상대로 닫는 </li>
요소 다음에 직접 표시, 나는 그것을 테스트 한 것처럼 메뉴 요소 뒤에 템플릿 파트가 추가되지 않음
class bt_menu_walker extends Walker_Nav_Menu
{
public function end_el(&$output, $item, $depth = 0, $args = array()) {
$dir = get_template_directory() . '/partials';
// Get file names from 'partials' directory
$scan = scandir($dir);
// Get css class names from menu elements
$classes = empty($item->classes) ? array() : (array) $item->classes;
foreach($scan as $file) {
// Only grab files
if (!is_dir("$file")) {
// Just raw filenames
$strip_extension = pathinfo($file, PATHINFO_FILENAME);
// Match css class with filenames
if ($classes[0] == $strip_extension) {
// Append template part after closing </li>
$output .= "</li>" . get_template_part('partials/' . $strip_extension);
}
}
}
}
}
있어 것입니다.
get_template_part
이 메뉴 구조 위에 렌더링되는 이유는 무엇입니까?