Я только что закончил учебник , который велел мне создать мой header.php
, не закрывая тег внизу включенного файла.
Теперь, когда я понимаю, что в любом из родительских файлов, который включает header.php
, он включает закрывающий тег; это действительно противоречит моему лучшему суждению как разработчика переднего плана; потому что кто-то, кто редактирует тему позже (и это может быть я, это может быть кто-то другой), должен знать, что этот тег необходимо закрыть в родительском файле, который включает его. Это просто неправильно. Такое ощущение, что когда ваш редактор помечает тег как "дополнительный закрывающий тег", вы хотите удалить его.
Я не нарушаю стандарт, если я использую:
<?php include(TEMPLATEPATH . '/justTheHTMLHeader.php'); ?>
<!-- AND -->
<?php include(TEMPLATEPATH . '/justTheBlogHeader.php');` ?>
вместо get_header()
?
Мне кажется, что этот подход был бы более модульным и не оставлял бы посторонние теги не закрытыми между включенными файлами и их родителями.
Я также заметил, что шаблон Wordpress по умолчанию настроен таким образом, поэтому я явно ошибаюсь и нарушаю какой-то стандарт темы Wordpress, независимо от того, что я думаю.
В чем причина этого?
Ну, этот урок довольно старый и устарел. Он был написан для WordPress 2.0; 10 основных релизов назад.
Краткий ответ: так сделано, потому что это лучший способ сделать это. Это самый быстрый/простой способ отделить контент от дизайна и предоставить все управление вам, разработчику темы.
Если вы не хотите открывать тег в заголовке, не закрывая его в заголовке, не делайте этого. Я лично всегда так делаю (хотя я обычно закрываю его в нижнем колонтитуле, а не в файле index.php). Отличительной особенностью WordPress является то, что он позволяет вам делать все, что вы хотите.
Вот две веские причины использовать get_header()
: