2012-03-29 6 views
0

Das ist ein bisschen schwer zu erklären, aber ich werde es versuchen. Lets sagen, ich habe diese in dem Header einer HTML-Datei MyFile.html genannt:Wie ändere ich alle Asset-Pfade in einer html/php-Datei, wenn ich sie einschließe?

<!doctype html> 

<head> 

<link rel="stylesheet" href="css/reset.css" /> 
<link rel="stylesheet" href="css/style.css" /> 
<script src="js/hovers.js"></script> 
<link rel="stylesheet" href="css/highlight.css"> 

</head> 

ich jetzt diese Datei in einer PHP-Datei enthalten sein sollen läßt, index.php sagen. Alle meine Assets (css, js usw.) werden jedoch in einem Ordner namens assets/gespeichert.

Nach dem Einschließen (oder vor?) Dieser HTML-Datei gibt es eine Möglichkeit, alle Asset-Pfade so zu ändern, dass sie auf "Assets/*" verweisen. Zum Beispiel würde 'css/reset.css' in 'assets/css/reset.css' und so weiter geändert. Beachten Sie, dass dies nicht nur auf diese Zeilen in der Kopfzeile beschränkt ist, sondern auch Elemente wie Bildelemente usw. enthält.

Wenn das verwirrend ist, lassen Sie es mich wissen und ich werde es nochmal versuchen!

Prost :)

Antwort

0

ich in der Regel eine Konstante für Dinge wie diese definieren, ist es dann über eine Konfigurationsdatei leicht veränderbar. Es bedeutet, dass Sie Ihre Vorlagendateien durchgehen und diese konstante Variable hinzufügen, aber danach wird es wirklich einfach zu ändern.

So würde die Dateien so etwas wie dieses:

<?php 
define('ASSETS_ROOT','/assets/'); 

und header.php wie dies wäre:

<!doctype html> 

<head> 

<link rel="stylesheet" href="<?php echo ASSETS_ROOT; ?>css/reset.css" /> 
<link rel="stylesheet" href="<?php echo ASSETS_ROOT; ?>css/style.css" /> 
<script src="<?php echo ASSETS_ROOT; ?>js/hovers.js"></script> 
<link rel="stylesheet" href="<?php echo ASSETS_ROOT; ?>css/highlight.css"> 

</head> 
+0

ich dachte

<?php require_once('config.php'); include('header.php'); 

config.php so etwas wie dieses würde Ich hoffte, dass es einen anderen Weg geben könnte, aber ich denke nicht. Vielen Dank! – chintanparikh

+0

Ich denke, Sie könnten es mit Puffer und Regex oder einem HTML-Parser tun, aber diese Methoden würden sehr unordentlich werden. – Nick

+0

Einverstanden, es ist viel sauberer, nur um eine Konstante zu verwenden :) – chintanparikh

Verwandte Themen