2015-08-03 5 views
1

Я настраиваю уже существующую тему. Тема использует header.php и footer.php. Я заметил, что теги <body> и </body> разделены между двумя файлами PHP, соответственно. Если я хочу создать элемент <form>, который будет не быть частью навигационной панели наверху или нижнего колонтитула внизу, должен ли я сделать отдельный PHP-файл? Это может показаться здравым смыслом для большинства, но я очень новичок в веб-дизайне. Я спрашиваю, потому что также можно поставить под код навигатора в моем файле header.php.Должен ли я создать новый PHP-файл для этого кода?

header.php

<!DOCTYPE html> 
<html <?php language_attributes(); ?>> 

<head> 
    <meta charset="<?php bloginfo('charset'); ?>" /> 
    <meta name="viewport" content="width=device-width, initial scale=1" /> 
    <title><?php wp_title(' | ', true, 'right'); ?></title> 
    <link rel="stylesheet" type="text/css" href="<?php echo get_stylesheet_uri(); ?>" /> 
    <?php wp_head(); ?> 

</head> 

<body <?php body_class(); ?>> 
    <div id="wrapper" class="hfeed"> 
     <header id="header" role="banner"> 
      <section id="branding"> 

      </section> 
     <nav class="navbar navbar-default"> 
      <div class="container-fluid"> 
      <!-- Brand and toggle get grouped for better mobile display --> 
      <div class="navbar-header"> 
       <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> 
       <span class="sr-only">Toggle navigation</span> 
       <span class="icon-bar"></span> 
       <span class="icon-bar"></span> 
       <span class="icon-bar"></span> 
       </button> 
       <a class="navbar-brand" href="http://www.efficientmind.org/?page_id=73&ap_page=ask">MoonLighting</a> 
      </div> 

      <!-- Collect the nav links, forms, and other content for toggling --> 
      <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
       <ul class="nav navbar-nav navbar-right"> 
       <li><a href="http://www.efficientmind.org/?page_id=73">Side Job</a></li> 
       <li class="dropdown"> 
        <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">My Account <span class="caret"></span></a> 
        <ul class="dropdown-menu"> 
        <li><a href="#">Settings</a></li> 
        <li><a href="#">Add Funds</a></li> 
        <li role="separator" class="divider"></li> 
        <li><a href="#">Sign Out</a></li> 
        </ul> 
       </li> 
       </ul> 
      </div> 

      </div><!-- /.container-fluid --> 
     </nav> 

footer.php

<div class="clear"></div> 
</div> 
<footer id="footer" role="contentinfo"> 
<div id="copyright"> 
<?php echo sprintf(__('%1$s %2$s %3$s. All Rights Reserved.', 'blankslate'), '&copy;', date('Y'), esc_html(get_bloginfo('name'))); echo sprintf(__(' Theme By: %1$s.', 'blankslate'), '<a href="http://tidythemes.com/">TidyThemes</a>'); ?> 
</div> 
</footer> 
</div> 
<?php wp_footer(); ?> 
</body> 
</html> 
+1

Да, вы должны сделать это отдельно. –

+0

@JayBlanchard нормально, спасибо за подтверждение. Какую функцию 'get' следует использовать для ссылки на этот php-файл? – DarthVoid

+0

Вы должны уметь 'include()' безопасно. –

ответ

0

Общее правило заключается в том, что код, который будет использоваться повторно из нескольких страниц должны быть отделилась в отдельный файл, например header.php и footer.php. Это упрощает обслуживание проекта. Кроме того, каждый файл должен попытаться выполнить только одну задачу.

В принципе, если не все использование файла заголовка будет нуждаться в этой форме, оно должно перейти в отдельный файл.

+1

@whatintarnation именно то, что я говорю в своем сообщении выше, если вы собираетесь использовать форму на более чем одной странице, затем создайте «шаблонный» файл только для формы и включите его, как вы делаете для верхнего/нижнего колонтитула. .. –

0

Предполагая, что две вещи здесь: (т. Е в содержании или колонтитула страницы)

  1. Форма будет находиться на вершине каждой страницы
  2. Там не будет идентична форме где-то еще

Он определенно принадлежит к заголовку. , если это обычная форма, которую вы использовали бы где-то еще (например, форма входа может быть использована поверх каждой страницы и на странице входа), вы должны добавить ее как функцию в файл templates.php и вызов этой функции из заголовка.

Смежные вопросы