ich habe ein PHP CMS vorliegen und möchte auf einfachstem Wege daraus ein statisches Web generieren, also für jeden möglichen Klick-Fall eine HTML Seite erstellen, damit das Web auch offline verfügbar ist. Die dafür notwendige Programmiertechnik ist soweit klar, nur weiß ich noch nicht, wie ich mit PHP aus bestehenden PHP Dateien mit Hilfe eines Schleifendurchlaufs HTML Dateien erstellen kann. Bisher habe ich es immer mit Perl gemacht und da war das mit dem Template Modul kein Problem, aber in diesem Fall habe ich das Web leider nicht mit Templates aufgesetzt. Meine Vorstellung war, mit Hilfe eines einzigen Scriptes alle notwendigen PHP Dateien mittels Schleife zu öffnen, alle entsprechenden (z.B. Produkt-) Seiten zu generieren und eben jede generierte Seite als HTML abzuspeichern, nur wie lässt sich das umsetzen?
Im Prinzip habe ich beispielsweise eine PHP Datei mit einer Produktübersicht mit leidglich ein paar Variablen drin. Wie kann ich diese mittels eines Scriptes auslesen, die Variablen durch deren Inhalt ersetzen und das dann als HTML speichern?
ansich ist das keine schlechte Sache, aber bei meinem Fall soll es später ein Admin-System geben von dem aus alle Inhalte des CMS verwaltet werden können und eben auch diese Offline Variante für CD Publikationen erstellt werden kann. Damit das für den Endbenutzer schön einfach bleibt und ich ausreichend Einfluss auf den Umfang und die Namensgebung habe, würde ich es gerne mit PHP lösen.
ich versuche mich nochmal etwas anders zu formulieren - vielleicht hat ja dann jemand eine idee :)
also:
gibt es eine möglichkeit, ein php script (mit parametern) durch ein anderes php script aufrufen zu lassen und die resultierenden html daten des aufgerufenen scriptes direkt in eine datei auf dem server zu speichern?
dabei sollte der jeweilige html content möglichst nicht ausgegeben werden, da mehrere tausend dateien in einer schleife erstellt werden sollen.
habe das jetzt mal getestet und im Prinzip funktioniert es auch, bis auf eine Ausnahme:
Wenn ich Parameter innerhalb einer include, require, o.ä. Funktion an die zu öffnende URL anhänge, gibt's eine Fehlermeldung.
PHP-Code:
include("katalog_produktdetails.php?aid=5");
Warning: main(katalog_produktdetails.php?aid=5): failed to open stream: No such file or directory in [...]/statics_produktdetails.php on line 28
Warning: main(): Failed opening 'katalog_produktdetails.php?aid=5' for inclusion (include_path='.') in [...]/statics_produktdetails.php on line 28
Mache ich das Ganze mit
PHP-Code:
include("katalog_produktdetails.php");
also ohne Parameter, funktioniert es, aber das bringt mich halt nicht weiter. Hat jemand eine Idee, wie man also diese PHP Dateien mit Parametern in eine Variable bekommt?