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

387

    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. Kysymys muille miehille

      Onko teille varattu nainen ongelma? Mikään muu naisessa ei töki kun se että hän on varattu. Kamppailen houkutuksen kanss
      Ikävä
      140
      7929
    2. Kaipaisin nyt kosketusta

      jota ei koskaan ole ollut. Saisinpa tuntea kätesi niskallani ja silittelemässä päätäni. Sulaisin varmasti siihen.
      Ikävä
      31
      3126
    3. Imaami kysyy, miksi pojat uivat ilman valvontaa

      Kalajoen särkät ovat usean kilometrin pituiset. Siellä on kylttejä, joissa varoitetaan rannan vaaroista. Siellä ei ole
      Maailman menoa
      382
      2198
    4. Mansikkatiloilla hyväksikäytetään ukrainalaisia

      Työolot ovat surkeita ja palkka kelvoton. https://yle.fi/a/74-20172942
      Maailman menoa
      284
      1760
    5. Kerrostaloihin ilmalämpöpumput

      Ulkomailla näkee paljon ilmalämpöpumppuja kerrostalojen ulkoseinissä. Mikä estää taloyhtiötä hankkimasta niitä asuntoih
      Sinkut
      147
      1583
    6. Tukalaa kuumuutta

      Tietäisitpä vaan kuinka kuumana olen käynyt viime päivät. Eikä johdu helteestä, vaan sinusta. Mitäköhän taikoja olet teh
      Ikävä
      21
      1421
    7. Sokea "ystävälle"

      Oletko oikeasti noin sokea?
      Ikävä
      100
      1229
    8. Sinä, ihastukseni

      Mitä haluaisit tehdä kanssani ensimmäisenä?
      Ihastuminen
      15
      1228
    9. En ymmärrä käytöstäsi

      Se on ollut eräänlaista hyväksikäyttöä. Että seura kyllä kelpaa palstan välityksellä silloin kun ei ole parempaakaan tek
      Ikävä
      137
      1152
    10. Tiedät ettei tule toimimaan.

      Mielenterveys ei kummallakaan kestä.
      Ikävä
      18
      1112
    Aihe