v2.5.2
Giriş yap

php header.php de her sayfada gereksiz css dosyalarını nasıl ayrıştırabilirim

theviper
569 defa görüntülendi ve 1 kişi tarafından değerlendirildi

php bir site her kategoride farklı css ve js dosyaları çalışıyor

header.php ayırınca her sayfada css dosyaları çağrılmış oluyor.

mesela haberler.php stil yapısı haber.css barındırıyor

<link id="stylecall" rel="stylesheet" href="./css/haber.css?v=1" />

ama oyunlar.php de haber.css yüklenmesi boşyere olmuş oluyor

yani sayfaya göre css dosyası çağırmak nasıl yapılır?

title olayını $title = ""; değişken oluşturup sayfaya göre title girebiliyorum

ama style dosylarını nasıl yapmak lazım çözemedem

yani haberler.php

<?php 

$title = "Güncel Haberler";
 
 include (header.php);


?>

header.php yide

<?php 

<title><?=$title;?></title>

?>
ebykdrms
959 gün önce

Alında title ile aynı yöntemle yapabilirsiniz.
Hatta aslında bir masterpage oluşturup sayfalarınızı buraya aktarmanız daha da güzel olur.
Böylece header.php, footer.php gibi ayrımlara gitmek zorunda kalmaz ve PHP-HTML ayrımını güçlendirmiş, MVC mantığına yaklaşmış olursunuz.
View sayfanıza göndereceğiniz verileri kendinizce organize edeceğiniz bir değişkene aktarın.

haber.php

$viewBag = [
    'page' => "haber.php",
    'title' => "Güncel Haberler",
    'headTags' => [
        '<link id="stylecall" rel="stylesheet" href="./css/haber.css" />',
        '<link id="stylecall" rel="stylesheet" href="./css/baska.css" />'
    ],
    'footTags' => [
        '<script src="./js/haber.js"></script>',
        '<div>İstenen herhangi bir kod</div>'
    ]
];

include("masterpage.php");

masterpage.php

<html>
    <head>
        <title><?=$viewBag['title']?></title>
        <link id="stylecall" rel="stylesheet" href="./css/master.css" />
        <?=implode($viewBag['headTags'])?>
    </head>
    <body>
        
        <?php include($viewBag['page']) ?>
        
        <script src="./js/jquery3.min.js"></script>
        <script src="./js/master.js"></script>
        <?=implode($viewBag['footTags'])?>
    </body>
</html>

masterpage.php'de kullandığınız tüm $viewBag key'lerini haber.php gibi sayfalarınızda oluşturmalısınız. Mesela haber.php'de footTags kısmına bi'şey eklemek istemiyorsanız bile footTags key'ini oluşturup boş dizi göndermelisiniz. Bu masterpage için bir standart oluşturmuş olacaksınız.