Exposicion Taxonomia

11

Click here to load reader

Transcript of Exposicion Taxonomia

Page 1: Exposicion Taxonomia

Taxonomía con Drupal

(Proyecto CIES)

Ronny Velásquez Sánchez

Desarrollador PHP

Page 2: Exposicion Taxonomia

Taxonomía – Module Taxonomy

Taxonomy = Clasificación

Taxonomy es un método de organizar el contenido de un sitio. Por ejemplo clasificar la música por género, para este proyecto surgió la necesidad de clasificar cursos.

En drupal 6 podemos administrar en Administre >> Content Management >> Taxonomy.

Page 3: Exposicion Taxonomia

El módulo Taxonomy se organiza en vocabularios que se componen de uno o más términos. Vocabularios son grupos de términos que describen el aspecto de un nodo.

Luego de crear un vocabulario (o más) procedemos a crear los términos que se van a asociar con estos vocabularios.

Al crear un nuevo término, Drupal le asigna un número. Y se le puede llamar a todos los artículos clasificados dentro de ese término, llamando por su número, por ejemplo: taxonomy/term/4

Taxonomía – Module Taxonomy

Page 4: Exposicion Taxonomia

Implementación …

Creación de un módulo personalizado (cies) en: proyecto/sites/default/modules/cies.

Tener en cuenta que los módulos se agregan dentro de la carpeta sites/default/modules y para multi sites en sites/all/site1/modules, etc.

Para este proyecto se usaron los siguientes módulos: admin_menu, captcha, cck, filefield, jquery_plugin, jquery_update, rotor, cies (personalizado), taxonomy (core).

Se modificó un tema para el proyecto.

Page 5: Exposicion Taxonomia

Implementación …

Para la creación del modulo se crearon los archivos: cies.info, cies.install y cies.module.

En interfaz gráfica se comenzó a crear los vocabularios y la lista de términos con sus dependencias.

Page 6: Exposicion Taxonomia

Se crearon los términos respectivos y su parentesco (admin.)

Implementación …

Page 7: Exposicion Taxonomia

Implementación …

… Ahora como hago para que

se muestre como lista y en

bloque

Para esto el módulo personalizado me ayudará

Page 8: Exposicion Taxonomia

En el modulo creamos funciones y hooks:Primero function cies_menu() para definir los menús así:

$items['categories'] = array('page callback' => 'cies_show_categories','access callback' => 'cies_perms','access arguments' => array(TRUE),'type' => MENU_CALLBACK

);

Implementación …

Page 9: Exposicion Taxonomia

Implementación …

Luego function cies_block($op = 'list', $delta = 0), donde definimos un bloque para nuestra función que dibujará la taxonomía, así:

$blocks[0] = array('info' => t('Categorias Cies'), 'cache' => BLOCK_NO_CACHE, 'region' => 'content_left');

$blocks = array('content' => cies_show_categories());

Page 10: Exposicion Taxonomia

Implementación …

Finalmente se crearon dos funciones cies_build_categories() y cies_show_categories() (lista las categorías)

Lo más resaltante que se utilizo aquí es que se utilizó por ejemplo:taxonomy_get_tree($vid = $value['vid'], $parent = 0, $depth = -1, $max_depth = NULL);

$path = 'node/'.$node_id;

drupal_get_path_alias($path, $language);

Page 11: Exposicion Taxonomia

function cies_show_categories() {// The categories listed$tree_category = cies_build_categories();

$data = '';if (!empty($tree_category)) { foreach ($tree_category as $value) {

$data .= $value;}

}return $data;

}

Implementación …