Director avansat pe drupal 7

Etapa 1. Preparare

  1. Creați un tip de material, acesta va fi de bază pentru toate produsele fără proprietăți speciale. În acest tip, adăugați câmpuri care vor fi prezente în toate celelalte tipuri, de exemplu, câmpurile: producător, preț etc.
  2. Creați un dicționar taxonomic pentru catalogul dvs. Pentru acest termen, adăugați un câmp de text opțional, în care vom stoca numele mașinii pentru tipul de material pentru acest termen.

Pasul 2: Configurați vederile

Pasul 3. Tipuri, filtre și câmpuri

  1. Creați un tip de material, la fel ca materialul de bază, cu aceleași câmpuri și adăugați altele noi;
  2. În termenul de taxonomie dorit, în câmpul de la pasul 1, specificați numele mașinii noului tip de material;
  3. Clonați pagina de afișare. adăugați câmpuri suplimentare și filtre pentru el. Calea pentru această pagină este ceva de genul sdfsdfsdfgsdgde. În setările Altele -> Nume mașină, specificați numele mașinii pentru tipul de material corespunzător.
  4. Acum, o pensetă cu urechile tale. În modulul nostru vom scrie codul:

    / **
    * Implementează hook_views_pre_build ().
    * /
    funcția mymodule_views_pre_build ($ view) $ view_name = 'catalog'; // numele opiniei
    $ field_name = 'field_catalog_type'; // numele câmpului atașat termenului

dacă ($ view-> name == $ view_name) dacă ($ view-> current_display == 'page') $ tid = $ view-> args [0];
$ termen = taxonomie_term_load ($ tid);

dacă (! gol ($ termen->)) $ afișare = $ termen -> ['und'] [0] ['valoare'];
dacă {isset ($ view-> display [$ display])) $ view-> display_handler-> handlers ['filtru'] = $ view-> afișare [$ display] -> handler-> get_handlers ('filter');
$ view-> filter = $ view-> afișare [$ display] -> handler-> get_handlers ('filter');

$ view-> display_handler-> handlers ['field'] = $ view-> afișare [$ display] -> handler-> get_handlers ('field');
$ view-> field = $ view-> afișare [$ display] -> handler-> get_handlers ('field');
>
>
>
>
>


Acest cod verifică ce tip de material este specificat în termen din argument și înlocuiește filtrele și câmpurile de pe ecran cu numele mașinii acestui material.
Nu uitați să corectați valorile variabilelor $ view_name și $ field_name.
Dacă modulul nu este disponibil, puteți descărca piesa de lucru a modulului.

mulțumesc tuturor lucrărilor, dar produce astfel de erori la navigarea prin director:

Funcția Încercarea de a obține proprietăți non-obiect în eval () (linia 4 în fișierul D :. \ Xampp \ htdocs site-ul \ module de \ php \ php.module (80) eval () „cod d \): Notă.

Funcția doar variabile ar trebui să fie transmise prin referință în views_page_title_pattern_alter (): avertisment strict (linia 33 în fișierul D: \ xampp \ htdocs \ \ site-ul site-uri \ toate \ module de \ TITLU_PAGINĂ \ module de \ views.page_title.inc).

La lucru nu pare să afecteze, dar vedeți această eroare toți utilizatorii ((

Director avansat pe drupal 7

se pare o eroare în modulul page_title, aveți un fel de cod php nu funcționează în setări

Director avansat pe drupal 7

Modulul paginii a fost dezactivat.

Încercat pe o instalare curată, această eroare a rămas

Funcția Încercarea de a obține proprietăți non-obiect în eval () (linia 4 în fișierul D :. \ Xampp \ htdocs site-ul \ module de \ php \ php.module (80) eval () „cod d \): Notă.

Articole similare