stampa questa pagina feed di signalkuppe.com/

You are hereEscludere da una vista dei nodi provenienti da un'altra vista utilizzando gli argomenti

Escludere da una vista dei nodi provenienti da un'altra vista utilizzando gli argomenti

By admin - Posted on 11 June 2010

Un trucchetto semplice ma secondo me molto utile per escludere da una vista dei nodi restituiti da una seconda vista. Il procedimento è molto semplice: fra gli argomenti della vista basta aggiungere "node: nid", e impostare questi parametri

  1. Azione da intraprendere se l'argomento non è presente: Stabilire l'argomento predefinito
  2. Tipo di argomento predefinito:codice php
  3. Nello spazio riservato al codice andremo a restituire i nid dei nodi da escludere pr0venienti da un'altra vista
  4. // trova i risultati della vista
     
      // carico la vista utilizzando il suo nome macchina
      $view = views_get_view('nomevista') or die('vista non esistente');
      // carico solo i risultati di un particolare display
      $view->set_display('block');
      $view->pre_execute();
      $view->execute();
     
      $results = $view->result; // array dei risultati
     
     
      $nids = array(); // array dei nid da escludere
     
     
      foreach ($results as $key => $value){
     
    	array_push($nids,$value->nid); // popola l'array
     
    	}
     
      // restituisci i nid nel formato atteso da view (1,2,3)
      $arguments = implode(',',$nids); 
     
      return $arguments;

  5. spuntare la voce "Consente termini multipli per argomento"
  6. spuntare la voce "Escludi l'argomento"

A questo punto la nostra vista restituirà tutti i nodi meno quelli presenti nella vista "nomevista"

Post correlati

Screenshot del tema Marinelli per drupalDa oggi è possibile scaricare su drupal.org la prima versione di Marinelli 3 per Drupal7. E' stato un lavoraccio ma sono soddisfatto del risultato ottenuto. Il tema è radicalmente cambiato rispetto alla seconda versione. Tutte le configurazioni...

Non chiedetemi perchè ma mi è capitato di dover concatenare due viste in modo da passare i risultati di una vista come argomento di un'altra. In particolare dovevo passare il nid di un nodo come argomento della seconda vista e mostrare quindi il risultato della seconda vista nella vista di partenza. Non è complicato, basta utilizzare la funzione views_embed_view

Prima Drupalcon in una città a dir poco fantastica. Sabato riunione del core developer summit guidata da Kieran Lal vestito da monaco. Interessante il nuovo sistema di testing del codice, sarà introdotta una nuova funzionalità che consentirà di testare al volo le patch. Anche Javascript rienterà nel sistema di testing. Lato Front End si cercherà di creare delle linee guida di sviluppo delle UI, in modo da rendere il più possibile coerente l...

Purtroppo molti siti ospitati su Aruba, compreso questo basato su Drupal (aggiornato all'ultima versione), sono stati infettati. Il problema riguarda l'inserimento di uno script nel file index.php. Per risolvere il problema è necessario rimuovere lo script dal file e in seguito far riconsiderare il sito da google attraverso il pannello di controllo del servizio Strumenti per webmaster. Per evitare di incappare di nuovo in questo...