По дате Август 25th, 2010

drupal - шпаргалка по структуре

Из заметок по drupal уже были выбраны некоторые полезности drupal. В этом посте - неполная шпаргалка по структуре drupal.

В drupal все элементы (так называемые Ноды | node) хранятся в специальной таблице node . Начиная с версии __ появилась таблица node_revision(?), в которой хранятся истории изменений (nid -node ID, vid - reVision ID)

Ноды (Node) могут быть  различного типа (type). От самого простой - Page до замысловатых (товар в интернет магазине с кучей характеристик, галерея… )

Таксономия (taxonomy) в drupal - один из наиболее гибких и мощных инструментов. Она позволяет реализовать практически любую каталогизацию (категории в несколько уровней, теги, свойства и т.д.) для выбранного типа node

Таблица vocabulary (?) - “словарики” (терминов таксономии)   содержит типы возможных “терминов” (тэги, категории товаров, разделы и т.д.)

SELECT *
FROM `term_data` td
INNER JOIN `term_hierarchy` th ON td.tid = th.tid
WHERE td.vid =5';
--td.vid - как раз и есть id словаря (
select * FROM `node` n
INNER JOIN `content_type_type1` c1 ON n.nid = c1.nid
INNER JOIN `term_node` tn ON tn.nid = n.nid
--выбираем все ноды, связанные с CCK-типом type1 и таксономией
--(будут дубли, в оригинальном запросе требовалось дополнительное условие)

Таблицы типа content_type_type1 (вместо type1 может быть, например, product) создаются CCK-плагином. Плагин позволяет добавлять дополнительные поля (field_pole, field_newname) - все поля начинаются со префикса field_

таблицы с префиксом view_ относятся к плагину view (вид), который позволяет настраивать отображение группы элементов (нод).

Иногда в таблицах могут присутствовать нестандартные недокументированные поля (добавленные предыдущими разработчиками) - бывает всякое =)

Опубликовано Август 25, 2010 | автор: levik  |  Нет комментариев »