Come riconoscere una pagina di dettaglio
Quando in un sito web si vuole visualizzare una lista di contenuti, un requisito piuttosto frequente è che si voglia visualizzare il dettaglio del contenuto stesso, che comprende maggiori informazioni rispetto a quante presentate nella lista. Per esempio da una lista di articoli che mostra il titolo, la data e l’autore, cliccando sull’articolo si atterra su una pagina che presenta tutto il contenuto testuale dell’articolo.
Ma come fare a riconoscere programmaticamente che una pagina è una pagina di dettaglio?
È sufficiente usare la classe CmsJspStandardContextBean ed uno dei suoi metodi “isDetailRequest”, come nel seguente esempio:
CmsJspStandardContextBean contextBean = CmsJspStandardContextBean.getInstance( request );
if (contextBean.isDetailRequest() ) {
some_action;
}
else{
other_action;
}
In quale occasione può essere utile tale metodo? Per esempio, se la stessa pagina presenta sia la lista che un contenuto di dettaglio, OpenCms non considera la pagina di atterraggio come una pagina di dettaglio. In tal caso posso voler forzare la visualizzazione di un dato contenuto tramite l’utilizzo del metodo sopra evidenziato.