Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Przystosowanie szablonu do strony
Forum PHP.pl > Forum > PHP
ZeTu
Witam, wymyśliłem sobie sposób na szablony do CMS'a.
A dokładnie, to w szablonie tam gdzie ma być menu wpisuje <--m--> i chciałbym, żeby po wczytaniu plików z folderu danego szablonu, zamieniało za to <--m--> dawało to <?php include("plugins/menu.php") ?>, za każdym razem jak próbuje, to jest pusta strona, a jak sprawdzam kod źródłowy to pisze w nim normalnie <?php include("plugins/menu.php") ?>, trochę dziwne :/

Kod wygląda tak:
  1. <?php
  2. $r="<--m-->";
  3. $m=' <?php include("plugins/menu.php") ?>';
  4. $r = str_replace("<--m-->", "$m", $r);
  5. echo $r;
  6. ?>

A demo znajduje się tutaj: http://zoba.eu/c/

Jak mam to zrobić? Jeśli znacie jakiś sposób, to prosiłbym o pomoc, bo ja próbowałem takie i nic :/
  1. echo $r;
  2. echo "$r";
  3. echo '$r';
  4. echo("$r");
  5. echo('$r');
  6.  
  7. print $r;
  8. print "$r";
  9. print '$r';
  10. print("$r");
  11. print('$r');
tolomei
Witaj.

To nie jest nic dziwnego, że takie coś Ci wypisuje(http://www.youtube.com/watch?v=PemsuAfc7Jw).

Proponuję zrobić tak:

plik menu.php:
  1. <?php
  2. $menu = '<div>';
  3. $menu .= 'moje menu';
  4. $menu .= '</div>';
  5.  
  6. return $menu;


plik index.php
  1. <?php
  2. $r = "<--m-->";
  3. $m = include 'plugins/menu.php';
  4. $r = str_replace("<--m-->", $m, $r);
  5. echo $r;


Mam nadzieję, że ten przykład wyjaśnił Ci co nieco.

Pozdrawiam.
ZeTu
Zrobiłem podobnie w taki sposób:
  1. <?php
  2. $r="<--m-->";
  3. $m = include 'plugins/menu.php';
  4. $r = str_replace("<--m-->", "$m", $r);
  5. return $r;
  6. ?>

Może w taki sposób być?
tolomei
Wszystko zależy od tego co masz w pliku menu.php.
On powinien zwracać Twoje menu za pomocą polecenia return.
ZeTu
Tam będą dane wyświetlane z bazy MySQL, a na razie wrzuciłem przykładową treść.
tolomei
Nie możesz ich wyświetlać, powinieneś je zwrócić słówkiem return.
ZeTu
A czemu tak? Tak jak ci podałem działa i wyświetla dane z bazy MySQL.
Mi chodziło o to, żeby właśnie wyświetlało mi tylko to co jest w danym pliku, w tym przykładzie menu.php i wyświetlam tym twoim "return" i działa, więc nie wiem o co ci chodzi.
tolomei
Skoro działa - to bardzo się cieszę wink.gif
ZeTu
Wystarczyło zamiast "echo", dać "return" i działa, bo teraz w łatwy sposób podzielę sobie główny plik CMS'a na części i teraz będzie łatwiej można robić szablony, a nie tak jak to robiłem wcześniej, że edytowałem cały plik, wszystkie DIV'y itd. Z resztą zobaczysz jak zademonstruję nową wersję i będą pluginy np. rotator bannerów smile.gif
Dzięki za pomoc.
tolomei
Czekam z niecierpliwością wink.gif
Powodzenia i pozdrawiam smile.gif
ZeTu
Dzięki smile.gif ale nie obiecuje, że uda się w tym tygodniu, bo za tydzień jadę do szpitala, na 3 tygodnie także, nie wiem czy zrobię przed czy po, no chyba, że jakimś cudem uda mi się w szpitalu na tych ich "kompach", przerobić mój system. Szczerze jakbym się wziął za ten system już teraz, to zrobiłbym go za dwa może trzy dni, a reszta to były by poprawki, ale niestety nie zrobię tego tak szybko, bo co chwile mam inne zajęcia, a na dodatek ta pogoda mnie rozwala haha.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.