Я строю статический сайт и пытаюсь получить модульный код. Использование include_once решает мою проблему, но новый созданный файл section.php рассматривается как еще один URL на сервере, и IMHO создает проблему SEO — дублированный контент. Тонкая теория, но все же.
Есть ли какое-либо решение использовать include_once и пометить эти включенные файлы как несуществующие для сканеров?
Просто пример кода, чтобы лучше определить, в чем проблема.
index.php выглядит так:
<div id="wrapper">
<?php include_once ('header.php'); ?>
<div id="content">
<h1>Title</h1>
<p>Page content</p>
</div>
</div>
header.php выглядит так:
<div id="header">
<ul class="menu">
<li>
<a href="/">Home</a>
</li>
<li>
<a href="#">About</a>
</li>
<li>
<a href="#">Contact</a>
</li>
</ul>
</div>
Сгенерированный код будет отображаться так:
<div id="wrapper">
<div id="header">
<ul class="menu">
<li>
<a href="/">Home</a>
</li>
<li>
<a href="#">About</a>
</li>
<li>
<a href="#">Contact</a>
</li>
</ul>
</div>
<div id="content">
<h1>Title</h1>
<p>Page content</p>
</div>
</div>
header.php — это другой файл на сервере, который может быть проиндексирован поисковой системой, поскольку у него есть собственный URL. Вопрос может быть глупым и может иметь самый простой ответ, я просто не знаю, следует ли мне использовать перенаправления или некоторые другие настройки.
Спасибо!
Вы можете сделать это несколькими способами.
1- Robots.txt:
Сохраните это как Robots.txt в корневом каталоге вашего сайта.
User-agent: *
Disallow: /elements
Сохраните ваши файлы в папке элементов. Что бы ни было в папке элементов, Google и другие поисковые системы не будут сканировать его. Это никогда не будет перечислено в результатах поиска.
2- Используйте ключ аутентификации
index.php будет выглядеть так:
>
<div id="wrapper">
<?php $key = 'allow_this'; ?>
<?php include_once ('header.php'); ?>
<div id="content">
<h1>Title</h1>
<p>Page content</p>
</div> </div>
header.php выглядит так:
<?php if($key=='allow_this'){ ?>
<div id="header">
<ul class="menu">
<li>
<a href="/">Home</a>
</li>
<li>
<a href="#">About</a>
</li>
<li>
<a href="#">Contact</a>
</li>
</ul>
</div>
<?php } ?>
Других решений пока нет …