http://netmind2018.alwaysdata.net
http://netmind2019.alwaysdata.net
usuario: admin
pass: Netmind
Comparación de 10 CMS:
http://cms-software-review.toptenreviews.com/
Drupal vs Joomla vs WordPress
https://support.rackspace.com/how-to/cms-comparison-drupal-joomla-and-wordpress/
¿Cual es el mejor CMS? NInguno:
https://www.cmscritic.com/wordpress-joomla-and-drupal-are-not-the-best-cms/
https://colorlib.com/wp/most-popular-content-management-systems/
function mimodulo_menu() { $items = array(); $items['admin/config/content/mimodulo'] = array( 'title' => 'Mi módulo', 'description' => 'Configuración de mi módulo', 'page callback' => 'drupal_get_form', 'page arguments' => array('mimodulo_form'), 'access arguments' => array('access administration pages'), 'type' => MENU_NORMAL_ITEM, ); $items['mimodulo'] = array( 'title' => 'Mi módulo', 'page callback' => '_mimodulo_page', 'access arguments' => array('access mimodulo content'), 'type' => MENU_NORMAL_ITEM, ); return $items; }
function _mimodulo_page() { $result = mimodulo_contenido(); $items = array(); foreach ($result as $node) { $items[] = array( 'data' => l($node->title, 'node/' . $node->nid), ); } if (empty($items)) { $page_array['mimodulo_arguments'] = array( '#title' => t('Contenido mi módulo'), '#markup' => t('No hay.'), ); return $page_array; } else { $page_array['mimodulo_arguments'] = array( '#title' => t('Contenido mi módulo'), '#items' => $items, //Theme hook with suggestion. '#theme' => 'item_list__mimodulo', ); return $page_array; } }
Aquí está el código de ejemplo para un módulo personalizado de Drupal:
1.- Instalar Drupal. Necesitamos una base de datos y los archivos de Drupal:
https://www.drupal.org/project/drupal
2.- Instalar y configurar algún tema si es necesario:
https://www.drupal.org/project/project_theme
3.- Instalar módulos básicos:
Wysiwyg: https://www.drupal.org/project/wysiwyg
Bajar librerías de TyniMCE (Versión 3.5.11):
O de CKEditor:
http://ckeditor.com/download
En este último caso modificar la línea 81 de sites\all\modules\wysigyg\editors\ckeditor.inc por esta:
if (preg_match(‘@version:\”(?:CKEditor )?([\d\.]+)(?:.+revision:\”([\d]+))?@’, $line, $version)) {
Las tenemos que guardar en sites\all\libreries
Tenemos que configurar qué editor vamos a usar para cada estilo y los botones que añadiremos a cada uno. ¡Ojo con el BBcode en el tinyMCE, que nos quita las imágenes!
IMCE: Para subir imágenes:
https://www.drupal.org/project/imce
https://www.drupal.org/project/imce_wysiwyg
3.- Menús
Instalar el módulo superfish:
https://www.drupal.org/project/superfish
Y bajar la librería superfish:
https://github.com/mehrpadin/Superfish-for-Drupal/archive/1.x.zip
4.- Vistas
Necesitamos los siguientes módulos:
Chaos Tools
https://www.drupal.org/project/ctools
Views
https://www.drupal.org/project/views
5.- Otros tipos de campos:
Fechas:
http://drupal.org/project/date
Youtube:
https://www.drupal.org/project/youtube
Referencias a nodos:
https://www.drupal.org/project/references