Vielä tästä minun cms:stä, jota olen opettelumielessä väsäämässä.
Minulla on admin puoli (http://localhost/testi/admin/index.php), joka näyttää body-osalta tältä:
----------------------------------------------------------------------------------------
Etusivulle
Footer teksti tähän
--------------------------------------------------------------------
Siis sillä index-sivulla on neljä nappia, jotka painettaessa liittää url:ään lisukkeen (mikä on oikea termi?), esim. http://localhost/testi/admin/index.php?pagesadmin. Sitten minulla on funktio, joka on include-komennolla liitetty sivun alkuosaan, joka ottaa vastaan tuon kutsun:
function contentRender(){
if (isset($_GET[pagesadmin'])) {
include("menu/pages_admin.php");
}
.
.
.
.
}
Jos esim. "pagesadmin" on osoiterivillä, funktio contentRender() ottaa sen vastaan ja näyttää content-div:issä tuon kyseisen tiedoston (esim. pages_admin.php). Tällä tavalla layout pysyy koko ajan samana ja ainoastaan sisältö content-div:ssä vaihtuu.
Olen alkanut miettiä, onkohan tämä hyvää koodausta. Kaikkiin tiedostoihin, jotka haluaa näkyvän content div:ssä, on liitettävä lisuke url:ään, ja tuo contentRender() alkaa olla tällä hetkellä aika pitkä:
---------------------------------------------------------------------------------
function contentRender(){
if (isset($_GET['menuadmin'])) {
include("menu/menu_admin.php");
}
if (isset($_GET['media_admin'])) {
include("media/upload_form.php");
}
if (isset($_GET['catadmin'])) {
include("categories/categories_admin.php");
}
if (isset($_GET['pagesadmin'])) {
include("pages/pages_admin.php");
}
if (isset($_GET['edit'])) {
include("pages/pages_edit_form.php");
}
if (isset($_GET['new'])) {
include ("pages/pages_add_new.php");
}
if (isset($_GET['upload'])) {
include("media/file_upload.php");
}
if (isset($_GET['edited'])) {
include("pages/pages_edit.php");
}
if (isset($_GET['mandra'])) {
include("menu/menu_edit.php");
}
if (isset($_GET['newsingleitem'])) {
include("menu/menu_objekt_single.php");
}
if (isset($_GET['newmenuitem'])) {
include("menu/menu_objekt_ny.php");
}
if (isset($_GET['menuparse'])) {
include("menu/menu_objekt_ny_parse.php");
}
if (isset($_GET['menueditparse'])) {
include("menu/menu_edit_parse.php");
}
if (isset($_GET['singleitemparse'])) {
include("menu/objekt_single_parse.php");
}
if (isset($_GET['mandra_single_article'])) {
include("menu/menu_edit_single_article.php");
}
if (isset($_GET['menu_up'])) {
include("menu/menu_ordning.php?");
}
if (isset($_GET['menu_down'])) {
include("menu/menu_ordning.php?");
}
if (isset($_GET['singlemenueditparse'])) {
include("menu/menu_edit_single_article_parse.php");
}
if (isset($_GET['menudelete'])) {
include("menu/menu_delete.php");
}
if (isset($_GET['catandra'])) {
include("categories/categories_edit_form.php");
}
if (isset($_GET['cateditparse'])) {
include("categories/categories_edit_parse.php");
}
if (isset($_GET['newcat'])) {
include("categories/categories_new.php");
}
if (isset($_GET['catdelete'])) {
include("categories/categories_delete.php");
}
if (isset($_GET['newcatparse'])) {
include("categories/categories_new_parse.php");
}
if (isset($_GET['newsingle'])) {
include("pages/pages_new_single.php");
}
if (isset($_GET['singleitemparse'])) {
include("menu/menu_objekt_single_parse.php");
}
}
Voisikohan systeemin tehdä jotenkin yksinkertaisemmin mutta kuitenkin niin, että layout pysyy samana ja pelkästään sisältö content-div:ssä vaihtuu?
P.S Toivottavasti html-tägit eivät strippaudu viestiä säästettäessä.
CMS:än admin puolen suunnittelu
PPietari
1
455
Vastaukset 1
- juhakorkeapudas
Pistät koko hoidon taulukkoon ja sieltä sitten valitset urlin parametrin mukaan oikean sivun.
Eli siis yksinkertaistettuna:
$pages = array('admin' => 'menu/menu_admin.php', jne);
$page = $pages[$_GET];
Sitten kontentin kohdalla määrittelet vain yhden includen
include($page);
Tämä on nyt tällainen esimerkki, todellisuudessa urlista tuleva parametri ja sivun olemassaolo täytyy jotenkin varmistaa (file_exists) ennen kuin pukataan sitä esille.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Miksi vanhusraiskaajaa ei ole palautettu?
Ukkola kysyy Rantaselta, vaikka perussuomalaiset ovat olleet hallituksessa kolme ja puolivuotta. Rantasen vastaus on "3571564- 1141226
- 1171127
- 118896
Katri Helena rikkoi hiljaisuuden dramaattisella uutisella: "Elossa ja ilossa ollaan"
Katri Helena on sinivalkoinen ääni. Hänen klassikkohittinsä ovat tärkeä osa suomalaista kansanperintöä. Katri veti jääh22883- 111832
Vaikea löytää samantyylistä miestä
Nyt on pakko avautua. Onko ketään muuta jonka on yksinkertaisesti todella vaikeaa löytää samanhenkistä kumppania kuin i110492- 18490
- 40488
- 36433