Back to top

Autore Topic: Eliminare main content da home page o rimuovere contenuti da una pagina ?  (Letto 11383 volte)

Offline otto9due

  • Appassionato
  • ***
  • Post: 689
  • Sesso: Maschio
  • Quello che semini raccogli!!
    • Mostra profilo
Quante volte avrai avuto bisogno di rimuove un contenuto, es: il main content ( contenitore articoli ) o qualsiasi altra posizione o div contenitore da una sola pagina nel tuo sito web? Nell'articolo che segue una breve guida che illustra un metodo creato e testato personalmente, che provvedere alla rimozione condizionata di contenuti filtrandoli per id (itemid) di pagina..
Uno strumento che consente una maggiore personalizzazione dei tuoi template.

Link all'articolo: http://www.joomla.it/articoli-community-16-e-17-tab/7385-eliminare-contenuti-da-pagine-scelte-es-main-content-da-home-page.html

[allegato eliminato automaticamente dopo un anno]
« Ultima modifica: 29 Gen 2014, 09:10:02 da alexred »
Fai agli Altri quello che desidereresti fosse fatto a TE!!

Offline floyd1616

  • Appassionato
  • ***
  • Post: 497
  • Sesso: Maschio
    • Mostra profilo
Ciao,
non so a quale progetto stai lavorando, o per cosa ti serve l'inserimento del codice "esterno" come da esempio, però credo, correggimi se sbaglio, che la stessa cosa la si potrebbe ottenere realizzando moduli personalizzati ed "agganciarli" ad una voce di menu specifica.
Visualizzarli o meno in una determinata pagina ecc...

Credo sia lo stesso concetto, oppure non ho inteso bene io quello che è il contenuto del tuo articolo?
Floyd

Offline otto9due

  • Appassionato
  • ***
  • Post: 689
  • Sesso: Maschio
  • Quello che semini raccogli!!
    • Mostra profilo
Il concetto è differente in parte, ed anche l'utilità. Cerco di farmi capire meglio. Il main content in alcuni template ( fatto salvo, forse, qualche template a pagamento ) non viene eliminato, o meglio, è possibile sostituire il contenuto ma non eliminarlo, visualizzando nella propria home page quella barra bianca che vedi nella prima foto.

Ora ho provato diverse soluzioni:
1) farlo scomparire del tutto eliminando il div.. RISULTATO: non vedresti più articoli in nessuna altra pagina
2) impostare un background trasparente.. RISULTATO: se hai un background nel body (magari anche un'immagine) non riuscirai a vedere nulla o quasi nulla di quello che c'è scritto nell'articolo.
ed altre prove che ho fatto prima di arrivare a questa soluzione..


Per quanto riguarda i moduli, e tutto ciò che joomla già ti permette di far apparire in pagina selezionate, "BISOGNA" continuare ad utilizzare il pannello di controllo, ma ci sono alcuni elementi sui quali non si può agire da pannello.. e questo sistema risolve un pò il tutto..
Fai agli Altri quello che desidereresti fosse fatto a TE!!

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Ciao
Devi convenire però che non è un metodo alla portata di tutti e non per tutti i template, specialmente quellu basati su framework. Io per le tue stesse esigenze in un mio sito che ho realizzato in versione 1.5 e dove mi serviva stravolgere content e moduli circa sparizione e variazioni di disposizioni ho utilizzato il modulo menu dependent items che fa le stesse cose ma è molto più user friendly. Il sito che ho menzionato è
www. mariangelavacatello.com/index.php come si può vedere non ricalca i canoni classici di contenuto centrale e barre laterali e in alcune pagine non presenta il content.
« Ultima modifica: 29 Gen 2014, 15:12:30 da tomtomeight »

Offline otto9due

  • Appassionato
  • ***
  • Post: 689
  • Sesso: Maschio
  • Quello che semini raccogli!!
    • Mostra profilo
Convengo che sia un metodo non molto pratico e veloce, mi sembra anche normale, quando installai la prima volta joomla avevo difficoltà anche a creare un menù.. vuoi che un utente che riesce a fare un semplice overwrite, una modifica come la sef, non riesca a fare una cosa del genere.. (credo di si.. alla fine si tratta di copiare ed incollare).. "facere de necessitate virtutem".
Per i framework non saprei proprio dirti, potrebbe esserci qualche incompatibilità particolare? Di che genere?


Il modulo di cui parli è molto interessante in effetti, ma per sparizione di moduli intendi ( cambio di stile es hidden  )..
Uno stile che comunque dovresti andare a scrivere  personalmente giusto?
« Ultima modifica: 29 Gen 2014, 19:18:15 da otto9due »
Fai agli Altri quello che desidereresti fosse fatto a TE!!

Offline tomtomeight

  • Global Moderator
  • Fuori controllo
  • ********
  • Post: 32046
  • Sesso: Maschio
  • Gli automatismi aiutano ma non insegnano nulla.
    • Mostra profilo
Per i template framework intendevo la difficoltà a trovare il giusto file ove inserire le condizioni che non sempre è l'index.php. Col modulo che ho utilizzato per ogni item che vuoi modificare crei un css apposito ove fai quello chev uoi, tipo spostare il content, oscurarlo ecc. e che ha effetto solo su quella voce item. Naturalmente per piccole modifiche può essere utile applicare il tuo codice mentre per stravolgere e piegare la grafica più profondamente il modulo menu dependent items può essere più adatto, credo che ognuno in base alle proprie conoscenze e possibilità può scegliere questi o altri metodi che in definitiva non si escludono a vicenda e che nessuno possa essere considerato migliore degli altri in assoluto.

Offline otto9due

  • Appassionato
  • ***
  • Post: 689
  • Sesso: Maschio
  • Quello che semini raccogli!!
    • Mostra profilo
Anche in altri template non è proprio così, sono pieni di include ecc.. Magari ecco, in questi casi bisogna perdere un pò di tempo a seguire gli include e/o require .. In effetti dipende, quel modulo non lo conoscevo, è sicuramente un ottimo modulo che utilizzerò ;) grazie.
Spero di implementare questo codice per potenziarne e differenziarne le capacità.
Fai agli Altri quello che desidereresti fosse fatto a TE!!

Offline etnatracker

  • Esploratore
  • **
  • Post: 117
  • Chi ha paura, muore ogni giorno
    • Mostra profilo
Io sono ancora più drastico... nei miei siti metto direttamente le condizioni basate sull'URI, non sul pageitem.

Gli utilizzi sono molto più vari di quanto non sembri. Ad esempio, volevo aumentare al massimo le performance della home page del mio sito principale www.etnatracking.com. Per fare questo, ho analizzato il css e ne ho fatta una versione con le sole classi usate in home page e una versione con tutte le classi usate nel resto. Con la seguente condizione, carico in home il css ridotto e nelle altre pagine il css esteso:

Codice: [Seleziona]
<?php if($_SERVER['REQUEST_URI']=="/"):?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template_home1.css" type="text/css" />
<?php endif;?>

Non scrivo l'ELSE perchè il forum mi blocca, ma il concetto è chiaro. Con condizioni analoghe, in altri siti faccio sparire pezzi di template che magari mi servono solo in home page. Non sono interventi alla portata di tutti, ma una persona che si propone di realizzare siti per terze parti deve sapere mettere un if in php dentro un template. Diverso è se uno si vuole fare il blog sulla bocciofila di quartiere...

Ciao

Etnatracker
"Tutto ciò che la natura ha di grande,tutto ciò che ha di piacevole,tutto ciò che ha di terribile,
si può paragonare all'Etna. E l'Etna non si può paragonare a nulla"
http://www.etnatracking.com

Offline otto9due

  • Appassionato
  • ***
  • Post: 689
  • Sesso: Maschio
  • Quello che semini raccogli!!
    • Mostra profilo
Avevo pensato anche io ad una strategia del genere, e prima di scegliere l'itemid ho fatto un pò di test, ma questa era una soluzione che mi permetteva di poter utilizzare il codice sia in caso la sef fosse attiva che il contrario. Li se ti cambia il link, o un'alias perdi l'effetto e devi rimodificare, al contrario l'id rimane..


Anche il diverso != ansichè ==  ti permette di evitare  di inserire else risparmiando codice..
« Ultima modifica: 30 Gen 2014, 00:20:48 da otto9due »
Fai agli Altri quello che desidereresti fosse fatto a TE!!

Offline giusep

  • Appassionato
  • ***
  • Post: 629
    • Mostra profilo
OK
Facile, semplice ed intuitivo.
Grazie per l'impegno.

Offline otto9due

  • Appassionato
  • ***
  • Post: 689
  • Sesso: Maschio
  • Quello che semini raccogli!!
    • Mostra profilo
Aggiungo inoltre, che la stringa può essere utilizzata oltre che con la sef attiva, anche per più di una pagina, o con le doppie lingue attive, utilizzando questa variante con && nel seguente modo:


Codice: [Seleziona]
<?php if ($pageitemid != '1003' && $pageitemid != '1002') : >

Dove ovviamente 1003 e 1004 sono gli id delle home bilingua ( nei rispettivi menu ) o due pagine a scelta..
Fai agli Altri quello che desidereresti fosse fatto a TE!!

Offline ippogrifo

  • Appassionato
  • ***
  • Post: 228
    • Mostra profilo
ciao

ho ritenuto utile il post ed ho effettuato le modifiche di otto9due

purtroppo  a me  disabilita l'intero template

vi invio porzione di codice


<?php /** Begin Main Body **/ ?>
                           
                             <?php if ($pageitemid != '5') : ?>
                                <div id="ct-mainbody">
                                 
                                <div class="rt-container">
                                        <?php echo $gantry->displayMainbody('mainbody','sidebar','standard','standard','standard','standard','standard'); ?>
                                </div>
                            <?php endif; ?>

                            <?php /** End Main Body **/ ?>




---------------------

grazie per chi sapra' consigliarmi

 



Web Design Bolzano Kreatif