Buonasera!
Ho bisogno del vostro aiuto per organizzare un sito un pó complesso
Il mio obbiettivo é di radunare un piccolo gestionale insieme a un blog e a una sezione privata,il tutto é organizzate piú o meno in stile wordpress:
le cartelle sono organizzate cosí
Schermata 2015-07-15 alle 21.40.25.png
in pratica il file index si occupa di includere il file scelto tramite il $_GET,se ad esempio ho $_GET['app']=agenda ($_GET[$config->get_GET_gestionale()]=agenda) va nella cartella gestionale e mi include agenda.php,lo stesso per la parte della cartella private,il problema mi si pone per il richiamo delle altre pagine per via dei meta tag in quanto le pagine le voglio salvare nel db esattamente come wordpress.
Tramite la parte di amministrazione creo le pagine,gli articoli,schede prodotto,ecc che vengono salvate nel db,non é un problema per richiamarle ma vengono incluse nel file index.php (a metá pagina circa) e per far in modo di caricare i meta tag nell'head diventa un pó un pasticcio
il mio problema é :
come é meglio organizzare il tutto?
voi come organizzereste la cosa?
se tengo il gestionale e il sito separati non ho probemi ma é quado cerco di fare tutto in un unico sito che allora non riesco a organizzare
avevo pensato di salvare le pagine del gestionale nel db e richiamarle come le altre in modo da avere tutto "uniforme" ma ho il dubbio che poi diventi tutto pesante perché nel caso dell'agenda,per esempio ho:
il file agenda.php,tramite chiamate ajax aggiungo/modifico/rimuovo gli appuntamenti passando i dati a un altro file dentro alla cartella gestionale e visualizzo il risultato in agenda.php
é un pó difficile da spiegare
al momento funziona tutto,il mio "problema" sono i meta tag o comunque come organizzare meglio il tutto
di seguito il mio file index.php per cercare di farmi capire meglio(so che non é scritto benissimo ma ho cercato di fare in modo che tramite il file config.php posso settare molte cose per un futuro cambiamento
):
Codice PHP:
<!DOCTYPE html>
<html>
<head>
<!-- CONTENT TYPE -->
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />
<!-- CHARSET -->
<meta charset='UTF-8'>
<!-- INCLUDO IL FILE DI CONFIGURAZIONE E LO ISTANZIO-->
<?php require("config/config.class.php"); ?>
<?php $config=new impostazioni(); ?>
</head>
<!-- CONTROLLO IN QUALE SEZIONE CI TROVIAMO (AREA PRIVATA,APPLICAZIONE,SITO) -->
<!-- variabile per facilitare il controllo,se é true significa che non viene passato niente in GET -->
<?php $nessuna_variabile=false; ?>
<!-- caso in cui non sia stata scelta pagina o sezione -->
<?php if(!isset($_GET[$config->get_GET_pagine()]) && !isset($_GET[$config->get_GET_privato()]) && !isset($_GET[$config->get_GET_gestionale()])) : ?>
<?php $page=$config->get_cartella_pagine()."home"; ?>
<?php $nessuna_variabile=true; ?>
<!-- caso in cui cerchiamo una pagina -->
<?php elseif(isset($_GET[$config->get_GET_pagine()]) && !isset($_GET[$config->get_GET_privato()]) && !isset($_GET[$config->get_GET_gestionale()])) : ?>
<?php $page=$config->get_cartella_pagine().$_GET[$config->get_GET_pagine()]; ?>
<!-- caso in cui cerchiamo una pagina dell'area privata -->
<?php elseif(!isset($_GET[$config->get_GET_pagine()]) && isset($_GET[$config->get_GET_privato()]) && !isset($_GET[$config->get_GET_gestionale()])) : ?>
<?php $page=$config->get_cartella_privata().$_GET[$config->get_GET_privato()]; ?>
<!-- caso in cui cerchiamo una pagina del gestionale -->
<?php elseif(!isset($_GET[$config->get_GET_pagine()]) && !isset($_GET[$config->get_GET_privato()]) && isset($_GET[$config->get_GET_gestionale()])) : ?>
<?php $page=$config->get_cartella_gestionale().$_GET[$config->get_GET_gestionale()]; ?>
<?php endif; ?>
<!-- FINE CONTROLLO SEZIONE-->
<!-- AZIONE AL CLICK SUL PULSANTE DI LOGOUT -->
<?php if(isset($_POST['session_out']) || isset($_GET['session_out'])) : ?>
<?php session_destroy(); ?>
<?php header("Location: index.php"); ?>
<?php endif; ?>
<!-- PARTE GRAFICA -->
<body>
<!-- DIV DA USARE COME POPUP,HANNO POSIZIONE ABSOLUTE -->
<div id= "errorLog" name="errorLog"></div>
<div id= "popup" class= "popup".<?php echo $page ?>.""></div>
<!-- MENU -->
<!-- menu admin visibile solo all'admin(0) e ai responsabili(1) -->
<?php if(isset($_SESSION['id']) && !isset($_GET[$config->get_GET_privato()]) && $_SESSION['livello']<=1): ?>
<div id="menu-admin">
<?php include('menu/menu-admin.php'); ?>
</div>
<?php elseif(isset($_SESSION['id']) && isset($_GET[$config->get_GET_privato()]) && $_SESSION['livello']<=1): ?>
<div id="menu-completo-admin">
<?php include('menu/menu-admin.php'); ?>
</div>
<?php endif; ?>
<!-- menu sito -->
<?php if(isset($_GET[$config->get_GET_pagine()]) || isset($_GET[$config->get_GET_gestionale()]) || $nessuna_variabile==true) : ?>
<nav id="navigation-bar" class="main-navigation" role="navigation">
<?php include('menu/menu-site.php'); ?>
</nav>
<?php endif; ?>
<!-- FINE MENU -->
<!-- CONTENUTO SITO -->
<div id="content" class="content" role="main">
<!-- qui vanno le pagine del db -->
<?php if(file_exists($page.".php")):
include($page.".php");
else:
include($config->get_cartella_pagine()."404.php" );
endif; ?>
</div>
<!-- FINE CONTENUTO SITO-->
</body>
<!-- FINE PARTE GRAFICA -->
<!-- INCLUDO I FILE JS ALLA FINE DELLA PAGINA PER VELOCIZZARE IL CARICAMENTO DELLA PAGINA -->
<script type='text/javascript' src='../config/jquery_2.1.0.js'></script> <!-- jQuery -->
<script type='text/javascript' src='../js/function.js'></script> <!-- ra -->
<!-- INCLUDO I FOGLI DI STILE ALLA FINE PER IL PROBLEMA DELL'HEADER -->
<?php require("style/impostazione_pagina.php"); ?>
<?php require("style/style.php"); ?>
<?php require("style/style-admin.php"); ?>
</html>
spero di essere stato chiaro
grazie per l'attenzione!!


ps:
come fogli di stile ho preferito utilizzare php anziché css perché per alcune parti grafiche mi servono delle funzioni che nel css non posso usare e li ho messi in fondo per evitare il problema del redirect tramite header
pps:
so benissimo che non é una cosa semplice e che il codice non é il massimo dell'eleganza,sono solo in cerca di consigli utili per trovare una soluzione e non insulti gratuiti