Используйте нормальный шаблонизатор, Twig.
Сначала делааете главный шаблон сайта и в нем определяете изменяемые блоки. Самый главный, разумеется, будет пустой блок контент - то, куда пойдет вывод отдельных страниц.
Также делаете блоки для скриптов и стилей.
Общие стили сайта определяете в блоке стилей.
Дальше делаете шаблоны для конкретных страниц, которые наследуют главному шаблону, и в которых заполняется блок контент.
При этом блок стилей расширяется стилями, нужными конкретно для этой страницы.
Таким образом не получится столь привычного быдлокодерам винегрета.
Любые стили будет лежать только в шаблонах, и не будут засорять другие элементы MVC.
При этом главный шаблон не будет засоряться. ненужными ссылками.
Я понимаю что без примера сложно.
Вот простейший пример того, о чем я писал выше:
main.twig.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
{% block stylesheets %}
<link href="/css/main.css" rel="stylesheet">
{% endblock %}
<title>{% block title %}Twig Example{% endblock %}</title>
</head>
<body>
{% block content %}{% endblock %}
</body>
</html>
index.twig.html
{% extends "main.twig.html" %}
{% block content %}
<h1> index page </h1>
<li><a href=/page1.php>Page 1</a>
<li><a href=/page2.php>Page 2</a>
{% endblock %}
page1.twig.html
{% extends "main.twig.html" %}
{% block stylesheets %}
{{ parent() }}
<link href="/css/page1.css" rel="stylesheet">
{% endblock %}
{% block title %}Page 1{% endblock %}
{% block content %}
<h1> page 1</h1>
<li><a href=index.php>index</a>
{% endblock %}