Ciao a tutti, ho creato una vista di tipo page con filtro esposto. Alla vista vorrei associare altre 3 sezioni, ovviamente sempre relative alla scelta effettuata nel filtro esposto, che però nella vista devono essere visualizzate come tabs. Quindi vorrei avere una vista con una sezione principale e sotto dei tabs/menu e a seconda di quello scelto si deve aprire il reletivo corpo. Come posso fare? Grazie mille.
o con un get come argomento della vista (dipende dal numero di argomenti) e poi con un modulo come quicktab e context li metti li o con una views di tipo attachment, ma la gestione delle tab diventa complicata, devi gestirlo dal template della vista per quanto ne so.
http://www.chromeos.eu
ealmuno, già ho fatto la vista di tipo page con 3 attachment che ereditano i filtri. Funziona tutto alla perfezione è solo che i vari attachment li volevo far visualizzare come menu o tabs e renderli visibili solo quando selezionati. Come posso lavorare sul template?
Il duro lavoro fatto con passione, ripaga sempre!!!!
O li fai a mano:http://jqueryui.com/demos/tabs/ (temizzando la vista)
O valuti (in base ai filtri passati, ad esempio se sono 2-3 basilari ci riesci e obbligatori) di creare un blocco e di fare un return del get del campo (non devi usare ajax) in modo da gestirli con quick tabs.
http://www.chromeos.eu
credo che a mano sia la soluzione per me più facile. Il link che mi hai passato è esattamente quello che voglio realizzare.
Questo è il codice che dovrei usare giusto?
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
<div class="demo">
<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
<div id="tabs-1">
<p>Proin elit arcu, rutrum commodo, vehicula tempus, commodo a, risus. Curabitur nec arcu. Donec sollicitudin mi sit amet mauris. Nam elementum quam ullamcorper ante. Etiam aliquet massa et lorem. Mauris dapibus lacus auctor risus. Aenean tempor ullamcorper leo. Vivamus sed magna quis ligula eleifend adipiscing. Duis orci. Aliquam sodales tortor vitae ipsum. Aliquam nulla. Duis aliquam molestie erat. Ut et mauris vel pede varius sollicitudin. Sed ut dolor nec orci tincidunt interdum. Phasellus ipsum. Nunc tristique tempus lectus.</p>
</div>
<div id="tabs-2">
<p>Morbi tincidunt, dui sit amet facilisis feugiat, odio metus gravida ante, ut pharetra massa metus id nunc. Duis scelerisque molestie turpis. Sed fringilla, massa eget luctus malesuada, metus eros molestie lectus, ut tempus eros massa ut dolor. Aenean aliquet fringilla sem. Suspendisse sed ligula in ligula suscipit aliquam. Praesent in eros vestibulum mi adipiscing adipiscing. Morbi facilisis. Curabitur ornare consequat nunc. Aenean vel metus. Ut posuere viverra nulla. Aliquam erat volutpat. Pellentesque convallis. Maecenas feugiat, tellus pellentesque pretium posuere, felis lorem euismod felis, eu ornare leo nisi vel felis. Mauris consectetur tortor et purus.</p>
</div>
<div id="tabs-3">
<p>Mauris eleifend est et turpis. Duis id erat. Suspendisse potenti. Aliquam vulputate, pede vel vehicula accumsan, mi neque rutrum erat, eu congue orci lorem eget lorem. Vestibulum non ante. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Fusce sodales. Quisque eu urna vel enim commodo pellentesque. Praesent eu risus hendrerit ligula tempus pretium. Curabitur lorem enim, pretium nec, feugiat nec, luctus a, lacus.</p>
<p>Duis cursus. Maecenas ligula eros, blandit nec, pharetra at, semper at, magna. Nullam ac lacus. Nulla facilisi. Praesent viverra justo vitae neque. Praesent blandit adipiscing velit. Suspendisse potenti. Donec mattis, pede vel pharetra blandit, magna ligula faucibus eros, id euismod lacus dolor eget odio. Nam scelerisque. Donec non libero sed nulla mattis commodo. Ut sagittis. Donec nisi lectus, feugiat porttitor, tempor ac, tempor vitae, pede. Aenean vehicula velit eu tellus interdum rutrum. Maecenas commodo. Pellentesque nec elit. Fusce in lacus. Vivamus a libero vitae lectus hendrerit hendrerit.</p>
</div>
</div>
</div><!-- End demo -->
Ora come posso modificarlo e dove lo devo inserire? Credo che vada inserito nel output della vista di tipo pagina, quindi in views-view.tpl.php (ovviamente sceglierò il più specifico) e all'altezza di questo codice
<?php if ($attachment_before): ?>
<div class="attachment attachment-before">
<?php print $attachment_before; ?>
</div>
<?php endif; ?>
Ma come?
Il duro lavoro fatto con passione, ripaga sempre!!!!
Allora questo:
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
<div class="demo">
<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
Lo metti nel template oppure su un campo global vuoto, in modo da poter selezionare la tab.
E questo:
<div id="tabs-1"> {output} </div>
nel campo della views attachment, prendi un tema del tipo stile della vista (clicca e cerca dove c'è il foreach) e prendi l'ultimo della scelta (in modo sia specifico per quelal vista e solo) e ricordati di cambiare l'idesempio: in views-view-unformatted--nome--attachemnt-1.tpl.php
<?php if (!empty($title)): ?>
<h3><?php print $title; ?></h3>
<?php endif; ?>
<?php foreach ($rows as $id => $row): ?>
<div class="<?php print $classes[$id]; ?>">
<div id="tabs-1">
<?php print $row; ?>
</div>
<?php endforeach; ?>
edit: jquery ui potrebbe andare in conflitto, caso mai usa un noconflict e richiede anche la libreria caricata, magari cerca altro.
http://www.chromeos.eu
Questo codice
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
<div class="demo">
<div id="tabs">
<ul>
<li><a href="#tabs-1">Nunc tincidunt</a></li>
<li><a href="#tabs-2">Proin dolor</a></li>
<li><a href="#tabs-3">Aenean lacinia</a></li>
</ul>
non ho capito dove le devo inserire, perdonami. Non lo devo mettere nel codice della vista di tipo pagina da cui dipendono i attachment? Io vorrei avere i tre tab in fondo alla visualizzazione della vista di tipo pagina.
Il duro lavoro fatto con passione, ripaga sempre!!!!
Si, lo puoi mettere sotto il template della vista (modifichi il views-page-qualcosa) e lo metti sotto il print.
http://www.chromeos.eu
Mentre quando mi dicevi di inserirlo in un campo global vuoto, intendi dire di aggiungere alla vista di tipo pagina un capo, ovviamente ordinato per ultimo, globale personalizzato dove inserire lo script?
Il duro lavoro fatto con passione, ripaga sempre!!!!
esatto, ma non credo legga js, ti conviene nel template
http://www.chromeos.eu
Ok ora provo. Grazie davvero di tutto l'aiuto!! Se capiti un giorno dalle parti di Perugia fammelo sapere!!!!!
Il duro lavoro fatto con passione, ripaga sempre!!!!
ho inserito lo script così, ma non mi fa vedere nulla...
<?php if ($rows): ?>
<div class="view-content">
<?php print $rows; ?>
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
<div class="demo">
<div id="tabs">
<ul>
<li><a href="#tabs-1">Schede operative</a></li>
<li><a href="#tabs-2">Programmi di controllo</a></li>
<li><a href="#tabs-3">Link utili</a></li>
</ul>
</div>
<?php elseif ($empty): ?>
<div class="view-empty">
<?php print $empty; ?>
</div>
<?php endif; ?>
Il duro lavoro fatto con passione, ripaga sempre!!!!
il "div" di
</ul>
</div>
<?php elseif ($empty): ?>
deve essere chiuso alla fine di tutto, nel terzo attachment.
http://www.chromeos.eu
non ho capito scusami. Questo script e codice lo inserisco solo nel template della vista della pagina....
ho corretto così il codice, mi ero dimenticato un
<?php if ($rows): ?>
<div class="view-content">
<?php print $rows; ?>
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
<div class="contenitore_tabsv">
<div id="tabs_views">
<ul>
<li><a href="#tabs-1">Schede operative</a></li>
<li><a href="#tabs-2">Programmi di controllo</a></li>
<li><a href="#tabs-3">Link utili</a></li>
</ul>
</div>
<?php elseif ($empty): ?>
</div>
<div class="view-empty">
<?php print $empty; ?>
</div>
<?php endif; ?>
può andare?
Il duro lavoro fatto con passione, ripaga sempre!!!!
Circa, elimina
<?php elseif ($empty): ?>
</div>
<div class="view-empty">
<?php elseif ($empty): ?>
<div class="view-empty">
Anche se è solo una precisazione
http://www.chromeos.eu
Sembra funzionare nel senso che clicco sul link del menu creato e mi va sul attachment a cui è associato, però non reisco ad ottenere l'effetto del link di dimostrazione http://jqueryui.com/demos/tabs/.
Infatti ho notato che sia i tag
<ul>
che<li>
, nell'esempio hanno delle classi, queste per citarne alcune:<ul class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all">
,<li class="ui-state-default ui-corner-top ui-tabs-selected ui-state-active">
ecc... che immagino generi lo script e che mostrano solo il tam selezionato. Stessa cosa anche nei<div>
attachment sempre per esempio<div id="tabs-1" class="ui-tabs-panel ui-widget-content ui-corner-bottom">
degli Perchè questo a me non avviene?Il duro lavoro fatto con passione, ripaga sempre!!!!
Hai aggiunto la libreria ui di jquery?
http://www.chromeos.eu
ho scaricato e attivat il modulo jQuery UI? non basta questo?
POi ho scaricato la libreria e scompattao la cartella in sites/all/libraries/jquery.ui/
Il duro lavoro fatto con passione, ripaga sempre!!!!
Non so se usa le stesse librerie, prova a controllare anche di aver inserito la libreria.
http://www.chromeos.eu
POi ho scaricato la libreria e scompattao la cartella in sites/all/libraries/jquery.ui/
Il duro lavoro fatto con passione, ripaga sempre!!!!
Prova a scaricare ed aggiungere manualmente quella del sito che ti avevo linkato.
http://www.chromeos.eu
ho scaricato la versione 1.8.15, il cui contenuto è:
/css
/development-bundle
/js
index.html
Ho preso il contenuto della directory "development-bundle", e l'ho inserito in sites/all/libraries/jquery.ui/ ma ancora non funziona...
nel readme del modulo jquery_ui ho letto che nel file .info del tema devo inserie questo "dependencies[] = jquery_ui", ma dove?
cavolo non riesco a farlo funzionare. Cosa strana che però ho il modulo date che necessita di jquery e funziona correttamente mentre il codice per i tab no....
Il duro lavoro fatto con passione, ripaga sempre!!!!
Non serve che ascolti il readme, alla fine basta che lo fai e sei apposto, controlla che le versioni suggerite combacino e che i js si trovino nel percorso giusto.
http://www.chromeos.eu
forse l'errore sta qui. dove devo inserire il div?
ora ho il codice in views-views...page :
<?php if ($rows): ?>
<div class="view-content">
<?php print $rows; ?>
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
<div class="contenitore_tabsv">
<div id="tabs_views">
<ul>
<li><a href="#tabs-1">Schede operative</a></li>
<li><a href="#tabs-2">Programmi di controllo</a></li>
<li><a href="#tabs-3">Link utili</a></li>
</ul>
<?php elseif ($empty): ?>
<div class="view-empty">
<?php print $empty; ?>
</div>
<?php endif; ?>
e dovrebbe essere corretto
mentre quello del terzo attachment è cos':
<?php
// $Id: views-view-unformatted.tpl.php,v 1.6 2008/10/01 20:52:11 merlinofchaos Exp $
/**
* @file views-view-unformatted.tpl.php
* Default simple view template to display a list of rows.
*
* @ingroup views_templates
*/
?>
<?php if (!empty($title)): ?>
<h3><?php print $title; ?></h3>
<?php endif; ?>
<?php foreach ($rows as $id => $row): ?>
<div class="<?php print $classes[$id]; ?>">
<div id="tabs-3">
<?php print $row; ?>
</div>
</div>
</div>*****
</div>*****
<?php endforeach; ?>
ho aggiunto i due div di chiusura che ti ho segnato con l'asterisco. E' giusto così?
Il duro lavoro fatto con passione, ripaga sempre!!!!
SI, è giusto, l'unica cosa devi caricare la libreria jquery ui.
http://www.chromeos.eu
in resocunto sullo stato le librerie
jQuery UI 1.8.15
jQuery Update 1.3.2
sono segnate in verde
quindi sono installate.
Il duro lavoro fatto con passione, ripaga sempre!!!!
ora non mi funziona piu jqueri nemmeno per il modulo date....
Il duro lavoro fatto con passione, ripaga sempre!!!!
Occo il codice, molto incasinato del mio output:
<script>
$(function() {
$( "#tabs" ).tabs();
});
</script>
<div class="demo">
<div id="tabs">
<ul>
<li>
<a href="#tabs-1">Schede operative</a>
</li>
<li>
<a href="#tabs-2">Programmi di controllo</a>
</li>
<li>
<a href="#tabs-3">Link utili</a>
</li>
</ul>
<div class="attachment attachment-after">
<div class="views_view__vista_fd_permesso_internazionali__attachment_1 view view-vista-fd-permesso-internazionali view-id-vista_fd_permesso_internazionali view-display-id-attachment_1 schede view-dom-id-1">
<div class="views-admin-links views-hide">
<div class="view-content">
<div class="views-row views-row-1 views-row-odd views-row-first">
<div id="tabs-1"> </div>
<div class="views-row views-row-2 views-row-even">
<div id="tabs-1"> </div>
<div class="views-row views-row-3 views-row-odd">
<div id="tabs-1">
<div class="views-field-field-fd-tipopdf-value">
<div class="views-field-field-fd-filepdf-fid">
</div>
<div class="views-row views-row-4 views-row-even views-row-last">
<div id="tabs-1"> </div>
</div>
</div>
</div>
<div class="views_view view view-vista-fd-permesso-internazionali view-id-vista_fd_permesso_internazionali view-display-id-attachment_2 prog view-dom-id-2">
<div class="views-admin-links views-hide">
<div class="view-content">
<div class="views-row views-row-1 views-row-odd views-row-first">
<div id="tabs-2"> </div>
</div>
<div class="views-row views-row-2 views-row-even">
<div id="tabs-2">
<div class="views-field-field-fd-nome-prog-value">
<div class="views-field-field-fd-prog-fid">
</div>
</div>
<div class="views-row views-row-3 views-row-odd">
<div id="tabs-2"> </div>
</div>
<div class="views-row views-row-4 views-row-even views-row-last">
<div id="tabs-2"> </div>
</div>
</div>
</div>
<div class="views_view view view-vista-fd-permesso-internazionali view-id-vista_fd_permesso_internazionali view-display-id-attachment_3 link view-dom-id-3">
<div class="views-admin-links views-hide">
<div class="view-content">
<div class="views-row views-row-1 views-row-odd views-row-first">
<div id="tabs-3">
<div class="views-field-field-fd-nome-sito-link-value">
<div class="views-field-field-fd-link-url">
</div>
</div>
<div class="views-row views-row-2 views-row-even">
<div id="tabs-3"> </div>
</div>
<div class="views-row views-row-3 views-row-odd">
<div id="tabs-3"> </div>
</div>
<div class="views-row views-row-4 views-row-even views-row-last">
<div id="tabs-3"> </div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
sul sito di jquery ho letto questo
potrebbe essere qui il problema? Jquery in altri moduli funziona...
Sennò devo cercare altre soluzioni per questi tabs!!!
Aiuto!!!!!
Il duro lavoro fatto con passione, ripaga sempre!!!!
2 metodi più usati/semplici per raggruppare più viste in una "pagina" sotto forma di tabs
1) creare tante viste blocco ed inserirle in un blocco o pagina quicktabs
2) http://www.drupalitalia.org/node/9503#comment-57126
Certified to Rock
Mi potresti dare dei dettagli sul primo metodo? Fondamentalemte ora ho una vista di tipo pagina con 3 attachment tutti con filtro esposto. Però potrei creare una vista con 4 blocchi con gli identici filtri esposti e non, inserire queste in una pagina ho blocco quicktabs che verrà poi collegata alla voce di menu. GIusto il concetto?
Il duro lavoro fatto con passione, ripaga sempre!!!!
piu o meno.
le viste allegato devono diventare viste blocco, mentre la vista principale rimane di tipo pagina con style quicktabs.
nell'interfaccia di configurazione di quicktabs inserisci le viste blocco come altrettante quicktabs.
Certified to Rock
Intanto buon ferragosto!!!! Sto cercando di realizzare queste benedette tabs, come mi hai detto te. Una cosa però, sto trasformando gli allegati in blocco, però come faccio per passare hai blocchi i la scelta del filtro esposto presente nel display pagina? Con gli allegati li potevo far ereditare.
Non riesco a trovare la sezione che dici te. L'interfaccia di configurazione di quicktabs mi fa scegliere solo lo stile delle tabs, null'altro.... Come posso risolvere?
Il duro lavoro fatto con passione, ripaga sempre!!!!
Ho fatto alcune prove e lo stile quicktabs lo posso mettere anche agli allegati :-) quindi credo di aver risolto il discorso del passaggio dei filtri esposti. Ora pero ho notato una cosa, nel dettaglio della scelta dello stile quicktabs assegnato all'allegato, trovo queste opzioni:
Potrà funzionare?
Il duro lavoro fatto con passione, ripaga sempre!!!!
Spam? Inoltre soluzione già proposta e se leggi non si può fare così in questo caso.
http://www.chromeos.eu
grazie @ealmuno, era spam.
Certified to Rock
Scusatemi ma perche spam? Sto facendo delle prove, ho messo nel display "pagina" lo stile quicktabs e poi gli allegati li ho trasformati in blocchi, ma così facendo il tabs, giustamnte, mi viene nei contenuti del display "pagina". Io invece la pagina la voglio sempre visibile, mentre i tre allegati devono avere lo stile tabs. Quindi ho preso ulallegato e gli ho assegnato lo stile quicktabs e sembra che funzioni. Ora devo vedere cosa succede se inserisco più contenuti nello stesso allegato.
Il duro lavoro fatto con passione, ripaga sempre!!!!
Non il tuo, il commento che ora è stato rimosso, aveva preso qualche parola con una frase assai strana e un link.
http://www.chromeos.eu
:-) non avevo visto la rimozione....
Il duro lavoro fatto con passione, ripaga sempre!!!!
Ragazzi ovviamente la mia idea non è andata a buon fine... :-( Ricapitolando bohz mi ha detto di trasformare gli allegati di una vista in blocchi, mentre lo stile del display pagina lo devo mettere come quicktabs. Ora cambia qualcosa se il display pagina lo lascio non formattato? Se lo metto quicktabs la tabs viene creata in quella sezione invece ioo vorrei che il display pagina apparisse normalmente mentre i tre allegati, ora trasformati in blocchi vengano visualizzati come tre tab. Poi una voltatresformati i tre allegati in altrettanti display di tipo blocco, vado in admin/build/quicktabs e creao un new QT blok, configurandolo così:
Tab Title: il nome da dare al tab;
Tab type: metto views;
Tab content: inserisco il nome della vista e la categoria del blocco della vista.
Giusto fin qui?
Ora viene creato un nuovo bocco, che devo attivare e inserire in una regione del sito, diciamo content area, ma come faccio per farlo visualizzare quando viene caricata la vista? anche in funzione del filtro esposto?
Grazie a tutti
Il duro lavoro fatto con passione, ripaga sempre!!!!