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

447

    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. Orpo räyhää: kansan on muututtava

      Orpon mukaan kansa ei elä kokoomuksen kanssa samassa todellisuudessa, ja sen vuoksi kansan on muututtava. Kas kun ei san
      Maailman menoa
      240
      2744
    2. Et taida paljoa

      treffeillä käydä? 😆 mieheltä Naiselle
      Ikävä
      101
      1154
    3. Nainen, nyt esitän muutaman skenaarion

      Asumme yhdessä ja seurustelemme. 1. On ilta ja olet sohvalla makoilemassa ja räpläät kännykkääsi. Makuuhuoneesta kuulu
      Ikävä
      123
      1121
    4. Oikea kaste on syntisten kaste

      Oikea kaste on syntisten kaste. Vain syntisiä tulee kastaa. Itsensä uskoviksi ja vanhurskaiksi julistaneita ei tule ka
      Kaste
      58
      1005
    5. Kristillinen kaste toimitetaan upottamalla veteen - pään valelukaste ei kelpaa

      Kristillinen upotuskaste perustuu juutalaiseen puhdistautumiseen, jossa upottaudutaan veden alle kokonaan. Paavali verta
      Kaste
      153
      1002
    6. Upotuskaste on raamatullisin kaste

      Jokainen raamattua lukenut tietää sen. Päivänselvä asia. Vauvalle annettu kaste ei löydy raamatusta.
      Kaste
      717
      917
    7. Mikä tekee sen

      Vetovoiman kaivatussasi?
      Ikävä
      57
      889
    8. Mitä toivoisit

      Välillämme vai toivoisitko mitään näiden vuosien jälkeen?
      Ikävä
      63
      851
    9. Harmittaako joku

      Harmittaako joku asia tai asiat, mitä on tapahtunut tai jäänyt tapahtumatta?
      Ikävä
      130
      830
    10. Perussuomalaisten kansanedustajalta erittäin raju puheenvuoro eduskunnassa massamaahanmuuttoa vastaa

      https://www.is.fi/politiikka/art-2000012019924.html Hyvä, että perussuomalaiset tuo Suomen kansalle tätä vihervasemmisto
      Maailman menoa
      238
      825
    Aihe