CMS:än admin puolen suunnittelu

PPietari

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ä.

1

383

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • 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

    1. Poliisi: Kymmenhenkinen pohjalaisperhe ollut vuoden kateissa kansainvälinen etsintäkuulutus Poliis

      Poliisi: Kymmenhenkinen pohjalaisperhe ollut vuoden kateissa – kansainvälinen etsintäkuulutus Poliisi pyytää yleisön apu
      Maailman menoa
      291
      2625
    2. Tässä totuus jälleensyntymisestä - voit yllättyä

      Jumalasta syntyminen Raamatussa ei tässä Joh. 3:3. ole alkukielen mukaan ollenkaan sanaa uudestisyntyminen, vaan pelkä
      Jälleensyntyminen
      300
      1389
    3. Mitään järkeä?

      Että ollaan erillään? Kummankin pää on kovilla.
      Ikävä
      108
      1261
    4. En kadu sitä, että kohtasin hänet

      mutta kadun sitä, että aloin kirjoittamaan tänne palstalle. Jollain tasolla se saa vain asiat enemmän solmuun ja tekee n
      Ikävä
      83
      1241
    5. Noniin rakas

      Annetaanko pikkuhiljaa jo olla, niin ehkä säilyy vienot hymyt kohdatessa. En edelleenkään halua sulle tai kenellekään mi
      Ikävä
      99
      1215
    6. Oisko mitenkään mahdollisesti ihan pikkuisen ikävä..

      ...edes ihan pikkuisen pikkuisen ikävä sulla mua??.. Että miettisit vaikka vähän missähän se nyt on ja oiskohan hauska n
      Ikävä
      58
      1195
    7. Lapuan sanomissa käy rytinä

      Pistivät sitten päätoimittajan pihalle
      Lapua
      45
      1063
    8. Helena Koivu : Ja kohta mennään taas

      Kohta kohtalon päivä lähestyy kuinka käy Helena Koivulle ? Kenen puolella olet? Jos vastauksesi on Helenan niin voisi
      Kotimaiset julkkisjuorut
      74
      963
    9. Au pair -työ Thaimaassa herättää kiivasta keskustelua somessa: "4cm torakoita, huumeita, tauteja..."

      Au pairit -sarjan uusi kausi herättää keskustelua Suomi24 Keskustelupalvelussa. Mielipiteitä ladataan puolesta ja vastaa
      Tv-sarjat
      22
      900
    10. Oot ihana

      Toivottavasti nähdään sattumalta jonain kesäpäivänä♥️🥺🫂
      Ikävä
      33
      807
    Aihe