Jump to content
  • 0

Оптимизация моих трудов)


Dazar
 Share

Question

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

Какими способами можно размножить этот дизайн на много страниц, чтобы потом, например при правке, не менять +100500 страниц, а изменить в одном месте?

Я знаю такой способ: В начале файла <?php require('na4alo.php') ?> Тут сама начинка страницы <?php require('konec.php') ?>

Но мне кажется есть какой-то более рациональный способ.. Есть ли таковой?

Edited by Dazar
Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

обычно для подобных вещей используются так называемые макеты, часто для их реализации используются сложные функции, но все они основаны на ptintf() и sprintf()

пример использования:

у вас есть макет, в котором чистый html - это будет наш скелет назовем его html.html и будем читать этот файл для всех страниц


<!DOCTYPE html>
<html>
<head>
%s
</head>
<body>
%s
</body>
</html>

дальше создадим head.html и body.html в них будет структура остальной однотипной части твоего документа

покажу все на примере head.html, body.html сделаешь сам, в него потом можно будет подгружать таким же способом подобные части такие как header,menu,footer....


<meta charset="UTF-8">
<title>%s</title>
<meta name="description" content="%s">
<meta name="keywords" content="%s">

это конечно минимум, но ты можешь добавить js и css, но у меня лично это делается динамически другой функцией

теперь наш index.php


<?PHP
$html = file_get_contents("html.html");
$head = file_get_contents("head.html");
$head = sprintf($head,"Название сайта","description","keywords");
$body = file_get_contents("body.html");

$html = sprintf($html,$head,$body);
echo $html;
?>

вот тебе в вкратце система работы с макетами страниц, теперь тебе для смены дизайна достаточно сменить только верстку в *.html файлах, но если подходить к этому вопросу серьезно, там нужно предусмотреть много мелочей в плане защиты и других, если они учитываются ТЗ.

Edited by Switch74
Link to comment
Share on other sites

  • 0

Так-так-так, очень интересно. Значит если я правильно понял, функция sprintf(a, b, c) подставляет в переменную а, на те места, где были пропуски, обозначенные %тип_данных, аргументы b и с соответственно да? Однако здорово, как-то даже не знал о такой штуке, ведь действительно, в каждом файле должны быть свои мета-теги.. Спасибо!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy