Hat jemand eine ungefähre Idee, - Denkanstoss - wie ich ein Modul bauen kann, was php-Dateien includet?
Ich benötige lediglich die Funktion:
include(meine_funktion.php);
Oder geht das nur über Web-Grab?
Danke
Detlev
Include-Modul?
Nein, ist kein Problem, so weit ich weiß gibt es dazu zwei Module, die das erledigen, eins war von Sven und eins nannte sicht Templateiclude und war im alten Forum mal erhältlich. Das von Sven finde ich gerade nicht, aber das Andere war dieses:
Code: Alles auswählen
Hier könnt Ihr Templates in den Upload Bereich einbinden, die Ihr selbst als PHP-Files geschrieben habt oder so im Internet findet. Für mich ist das sehr sinnvoll, da ich immer in "Modulen" entwickelt habe, die ich dann in meinem eigenen CMS einfach als "Block" eingefügt habe und so kann man das ideal ins Contenido einbinden. Vielleicht kann das ja noch jemand anderer als mir benötigen.
Einfach in die inc/config.php unter Eurem Client folgendes einbinden:
### Templates hinzufügen
$cfgClient[1]["path"]["templates"] = $cfgClient[1]["path"]["frontend"]."templates/";
$cfgClient[1]["htmlpath"]["templates" ] = $cfgClient[1]["htmlpath"]["frontend"]."templates/";
$cfgClient[1]["frontendpath"]["templates"] = "templates/";
$cfgClient[1]["actionname"]["templates"] = "Templates";
$cfgClient[1]["text"]["templates"] = "Laden Sie Templates auf den Webserver";
$cfgClient[1]["filetype"]["templates"] = "templates";
Danach habt Ihr den Uploadbereich um den Bereich Templates erweitert.
Dann könnt Ihr die php Templates uploaden. Nach dem Uploaden Eurer Templates erstellt Ihr einfach das folgende Modul.
Wichtig ist die Endung .php, denn wenn Ihr diese .inc nennt und man direkt auf die Datei zugreift, dann sieht man den Source über den Webbrowser, da dieser das als Textfile erkennt. Am besten das Verzeichnis templates durch eine .htaccess schützen, denn der Webserver greift drauf zu und nicht wie bei den Bildern über den Browser.
Name des Moduls:
Template (name_des_templates.php) einbinden
Beschreibung:
Individuelles Einbinden von Templates
Input:
$pfad = $cfgClient[$client]["htmlpath"]["templates"];
echo "Welches Template soll included werden?<br>";
echo "<select name=\"CMS_VAR[0]\" size=\"1\">";
if ("CMS_VALUE[0]" != 0) {
echo "<option value=\"0\">".$lngForm["nothing"]."</option>";
} else {
echo "<option value=\"0\" selected>".$lngForm["nothing"]."</option>";
}
$handle=opendir($pfad);
while ($file = readdir ($handle)) {
if ($file != "." && $file != "..") {
if ("CMS_VALUE[0]" != $file) {
echo "<option value=\"$file\">$file</option>";
} else {
echo "<option value=\"$file\" selected>$file</option>";
}
}
}
closedir($handle);
echo "</select>";
Output:
$pfad = $cfgClient[$client]["htmlpath"]["templates"]."CMS_VALUE[0]";
include ("$pfad");
Danke und sorry, ich habe beim Suchen zu früh die Nerven verloren!
Um all denen, die per Suchen-Funktion diesen Thread finden -
Das Modul von Sven:
INPUT:
echo "<table align=\"left\" cellpadding=\"0\" cellspacing=\"0\">
<tr valign=\"top\">
<td width=\"202\">Einzufügendes Script:</td>
<td><INPUT TYPE=\"text\" NAME=\"CMS_VAR[0]\" VALUE=\"CMS_VALUE[0]\"></td>
</tr></table>";
OUTPUT:
include("CMS_VALUE[0]");
Gruß
Detlev
Um all denen, die per Suchen-Funktion diesen Thread finden -
Das Modul von Sven:
INPUT:
echo "<table align=\"left\" cellpadding=\"0\" cellspacing=\"0\">
<tr valign=\"top\">
<td width=\"202\">Einzufügendes Script:</td>
<td><INPUT TYPE=\"text\" NAME=\"CMS_VAR[0]\" VALUE=\"CMS_VALUE[0]\"></td>
</tr></table>";
OUTPUT:
include("CMS_VALUE[0]");
Gruß
Detlev
@ Björn
Danke - mit Hilfe des Moduls kann man in Contenido so relativ komplexe Sachen wie z.B. ein datenbankbasiertes Seminar- oder Kursangebot (z.B.VHS-Kursangebot) einbauen.
Als Beispiel:
http://212.110.96.66/pages/ausbildung/front_content.php
(mit Dummy-Inhalten gefüllt)
Also nochmals Danke
Gruß
Detlev
Danke - mit Hilfe des Moduls kann man in Contenido so relativ komplexe Sachen wie z.B. ein datenbankbasiertes Seminar- oder Kursangebot (z.B.VHS-Kursangebot) einbauen.
Als Beispiel:
http://212.110.96.66/pages/ausbildung/front_content.php
(mit Dummy-Inhalten gefüllt)
Also nochmals Danke
Gruß
Detlev
Ich habe jetzt mal die beiden Module von Detlef und Björn ausprobiert.
Eigentlich ist mir das simplere Modul von Detlev lieber, weil ich da eine beliebige php-datei includen kann- egal wo sie liegt.
Bei Björns Modul hab ich das Problem, dass ich erst ein "Template" hochladen muss (natürlich keins im sonst verwandten Sinne, sondern eben eine php-Datei). Eine Frage zum Verständnis: Meistens handelt es sich ja nicht nur um eine Datei, sondern um ein ganzes Paket von php-Scripten (z.B. ein Forum), welches zu dieser zu includenden Anwendung gehört.
Ich würde dann also meine ganze Anwendung (z.B.Forum) mit allen datein in das Verzeichnis /templates legen und die index.php "uploaden" und danach includen ?
Oder hab ich da was falsch verstanden ?
Detlefs Modul bringt mir übrigens immer eine Fehlermeldung, obwohl man da doch eigentlich gar nichts falsch machen kann
so etwa:
Warning: Failed opening 'http://www.meinedomain.de/datei.php' for inclusion (include_path='.;c:\apache\php\pear') in c:\apache\htdocs\contenido\front_single\front_content.php(133) : eval()'d code on line 110
Eigentlich ist mir das simplere Modul von Detlev lieber, weil ich da eine beliebige php-datei includen kann- egal wo sie liegt.
Bei Björns Modul hab ich das Problem, dass ich erst ein "Template" hochladen muss (natürlich keins im sonst verwandten Sinne, sondern eben eine php-Datei). Eine Frage zum Verständnis: Meistens handelt es sich ja nicht nur um eine Datei, sondern um ein ganzes Paket von php-Scripten (z.B. ein Forum), welches zu dieser zu includenden Anwendung gehört.
Ich würde dann also meine ganze Anwendung (z.B.Forum) mit allen datein in das Verzeichnis /templates legen und die index.php "uploaden" und danach includen ?
Oder hab ich da was falsch verstanden ?
Detlefs Modul bringt mir übrigens immer eine Fehlermeldung, obwohl man da doch eigentlich gar nichts falsch machen kann

so etwa:
Warning: Failed opening 'http://www.meinedomain.de/datei.php' for inclusion (include_path='.;c:\apache\php\pear') in c:\apache\htdocs\contenido\front_single\front_content.php(133) : eval()'d code on line 110
für solche komplexe sachen würde ich das webgrab verwenden.
Ein neues CMS-System:
www.der-dirigent.de
www.der-dirigent.de