**Drupal 7** Contenedor, en una sola pagina, para todos los articulos que tienen que ver con drupal 7 (algunos articulos seguramente se refieren a drupal 6) http://drupal.org/node/133341 ====== Idioma ====== Nos descargamos el idioma que queremos: https://localize.drupal.org/translate/languages/ Lo ponemos en: drupal-7.31/profiles/standard/translations Por ejemplo castellano y catalán: http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.29.es.po http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.29.ca.po ====== Calendar ====== http://drupaltherapy.com/date_d7 Estructura/tipos de contenido Añadir Nombre: Evento Grabar Configurar Campos: fecha / field_fecha / Date / Select list guardar Vista Habilitar views y views_ui Estructura / Views Añadir campo: contenido:fecha Añadir Filtro: Contenido:tipo= ====== Drush ====== ===== Descargar sitio ===== * Una version determinada sudo drush dl drupal-6 --destination=/var/www ===== Descargar modulos ===== Asumimos que la instalacion esta de drupal esta en '/var/www/drupal' Si queremos elegir entre una lista de versiones, util cuando trabajamos (Feb/2013) todavia con Drupal 6: cd /var/www/drupal; sudo drush dl storm --select Y elegimos la que nos guste: Choose one of the available releases: [0] : Cancel [1] : 6.x-2.x-dev - 2013-Feb-10 - Development [2] : 6.x-2.1 - 2012-Oct-15 - Supported, Recommended, Installed [3] : 6.x-1.x-dev - 2012-Jan-28 - Development [4] : 6.x-1.37 - 2012-Jan-03 - Supported [5] : 6.x-1.33 - 2010-May-19 - Security 2 Project storm (6.x-2.1) downloaded to [success] /var/www/drupal_6/sites/all/modules/storm. Project storm contains 11 modules: stormnote, stormteam, stormorganization, stormtask, stormproject, storminvoice, stormperson, stormtimetracking, stormexpense, stormticket, storm. ===== Descargar modulos (viejo) ===== Para instalar paquetes desde la linea de comandos Descargar un módulo: $ drush -r /var/www/drupal7 dl views Project views (7.x-3.5) downloaded to /var/www/drupal7/sites/all/modules/views. [success] Project views contains 2 modules: views, views_ui. A partir de un sitio construir un make. Desde el root del sitio drupal ejecutamos: # drush make-generate sitio.make Todavía no está implementado generar un profile a partir de una instalación: # drush profile-generate Definir alias para drush: /etc/drush/aliases ===== Habilitar modulos ===== cd /var/www/drupal; sudo drush en storm ===== Deshabilitar modulos ===== cd /var/www/drupal; sudo drush dis storm ===== Idiomas ===== 1. Habilitar modulo 'locale': sudo drush en locale 2. Descargar y habilitar modulo 'drush_language' sudo drush dl drush_language; sudo drush en drush_language 3. Anyadir el idioma, en este caso 'es': sudo drush language-add es Todavia no me funciona ===== Themes ===== * Deshabilitar sudo drush pm-disable theme_name * Habilitar: sudo drush pm-enable theme_name * Cambiar tema: sudo drush vset theme_default theme_name * Listar disponibles: drush pm-list | grep Theme ===== Actualizar core ===== sudo drush vset --always-set maintenance_mode 1 sudo drush cache-clear all sudo drush up drupal sudo drush vset --always-set maintenance_mode 0 sudo drush cache-clear all ===== Actualizar modulo ===== sudo drush vset --always-set maintenance_mode 1 sudo drush cache-clear all sudo drush up Vemos los modulos que requieren actualizar: Name Installed version Proposed version Status AudioField (audiofield) 7.x-1.0-beta8 7.x-1.0-beta8 Up to date Drupal 7.31 7.31 Up to date Bundle copy (bundle_copy) 7.x-2.x-dev 7.x-2.x-dev Up to date Coder (coder) 7.x-2.2 7.x-2.2 Up to date Chaos tools (ctools) 7.x-1.4 7.x-1.4 Up to date Custom Formatters (custom_formatters) 7.x-2.2 7.x-2.2 Up to date Devel (devel) 7.x-1.5 7.x-1.5 Up to date Features (features) 7.x-2.0 7.x-2.2 Update available Media (media) 7.x-1.4 7.x-1.4 Up to date Fivestar (fivestar) 7.x-2.1 7.x-2.1 Up to date Flag (flag) 7.x-3.5 7.x-3.5 Up to date Form builder (form_builder) 7.x-1.5 7.x-1.5 Up to date getID3() (getid3) 7.x-1.0 7.x-1.0 Up to date Libraries (libraries) 7.x-2.2 7.x-2.2 Up to date Link (link) 7.x-1.2 7.x-1.2 Up to date MediaFront (mediafront) 7.x-2.2 7.x-2.2 Up to date Options element (options_element) 7.x-1.12 7.x-1.12 Up to date Remote stream wrapper (remote_stream_wrapper) 7.x-1.0-rc1 7.x-1.0-rc1 Up to date Token (token) 7.x-1.5 7.x-1.5 Up to date Views (views) 7.x-3.8 7.x-3.8 Up to date Views RSS (views_rss) 7.x-2.0-rc3 7.x-2.0-rc3 Up to date Views RSS: iTunes Elements (views_rss_itunes) 7.x-1.0-rc2 7.x-1.0-rc2 Up to date Voting API (votingapi) 7.x-2.11 7.x-2.12 Update available Webform (webform) 7.x-3.20 7.x-3.21 Update available Premium Responsive (responsive) 7.x-1.7 7.x-1.7 Up to date Actualizamos el modulo Features: sudo drush pm-update features votingapi webform y Comprobamos de nuevo: sudo drush up Terminamos: sudo drush vset --always-set maintenance_mode 0 sudo drush cache-clear all ===== Ver configuración de drush ===== Útil para por ejemplo saber qué php.ini está usando: drush status exec() has been disabled for security reasons bootstrap.inc:636 [warning] The following restricted PHP modes have non-empty values: [error] disable_functions. This configuration is incompatible with drush. Please check your configuration settings in /etc/php5/cli/php.ini or in your drush.ini file; see examples/example.drush.ini for details. exec() has been disabled for security reasons bootstrap.inc:441 [warning] exec() has been disabled for security reasons bootstrap.inc:636 [warning] exec() has been disabled for security reasons bootstrap.inc:636 [warning] exec() has been disabled for security reasons bootstrap.inc:636 [warning] Drupal version : 7.34 Site URI : http://default Database driver : mysql Database hostname : localhost Database username : test_directa_cat Database name : test_directa_cat Database : Connected Drupal bootstrap : Successful Drupal user : Anònim Default theme : directa Administration theme : seven PHP configuration : /etc/php5/cli/php.ini Drush version : 5.4 Drush configuration : Drupal root : /home/virtualmin/test.directa.cat/public_html Site path : sites/default File directory path : sites/default/files Private file directory path : sites/default/files/private temp : /tmp ====== Jquery ====== http://drupal.org/node/1078080 Descargar: http://jquery-ui.googlecode.com/files/jquery-ui-1.7.3.zip Instalar módulo jquery: http://ftp.drupal.org/files/projects/jquery_ui-6.x-1.x-dev.tar.gz ====== Lentitud ====== www.acquia.com web del creador de Drupal, buscar blog Drupal penaliza con usuarios autenticados, permisos y roles Menús o bloques renderizados pero no mostrados, por ejemplo los borra un template Módulo estadísticas o logs apache para mirar lo que tarda una página ===== Herramientas ===== * newrelic.com analizador de webs * google analytics * Profiles: Xhprof y Xhprofcli. Extensión php * Módulo devel * funciones: timer_start() y timer_read() para ver cuanto tardan bloques, etc... en ser renderizados. Valores "normales" de una página. Empezamos a mirar las páginas mas sencillas, como por ejemplo un 404: * 1-1.5 sec * 40-60 mb * 100-300 queries paginador views_large_pager así views no tiene que hacer un count(*) Lo mejor de caché: Caché de blocks Panels tiene un execelente sistema de cahcé aunque digan que va lento. ====== Migracion entornos ====== Módulo uid -> guarda identificador único de contenidos Módulo deploy -> para migrar contenido entre entornos. ====== Multisite ====== Crear BBDD # mysql -u root -p mysql> create database if not exists character set="UTF8"; mysql> grant usage on *.* to ''@'%' identified by ''; mysql> GRANT ALL PRIVILEGES ON . * TO ''@'%' WITH GRANT OPTION ; Crear carpeta en /sites/eloin.org Copiar fitxer configuració: drupal/sites/default$ cp default.settings.php ../eloin.org/settings.php @code array( 'driver' => 'mysql', 'database' => '', 'username' => '', 'password' => '', 'host' => 'localhost', 'port' => 3306, 'prefix' => 'd7_', 'collation' => 'utf8_general_ci', ); @endcode ====== Openlayers ====== http://drupal.org/node/627816 Instalar: * openlayers * ctools * cck * views Crear tipo contenido con dos campos float * longitud * latitud Añadimos nodos como puntos del mapa con coordenadas Creamos vista de tipo nodo Seleccionamos "open data layers" y pulsamos "add display" En style seleccionamos "open layers data" Seleccionamos los campos "content: latitu" y "content: longitut" Falta: Add a meaningful title to the new display as it will show up in the map preset information in the next step. Ahora creamos preset En admin/site building/openlayer/preset/add ====== Templates ====== http://demo.rockettheme.com/drupal/ ====== Widgets ====== ===== Twitter ===== Para añadir un timeline de twitter, creamos el código desde la web de twitter desde:\\ https://dev.twitter.com/docs/embedded-timelines Y lo pegamos en un bloque. Vamos a ====== Themes ====== ===== Infuse ===== Crear Menú: Administer > Site Building > Menus En primary links creamos los ítems y los ponemos como queramos. El path es del tipo: node/1 ==== Añadir Stories (banner rotatorio con imagenes) ==== http://www.rockettheme.com/tutorial-files/drupal6/drokstories.php Como tengo un multisite, la ruta de las imagenes la puesto en: ../../files/stories/demo/rokstories/ Y entonces queda: drupal6/sites/misitio.com/files/stories/demo/rokstories Hay que ponerlo en el block **feature** o **showcase** o **scroller** para que quede bien Cambiar "Read the Full Story" del icono Cambiamos el texto del fichero: rt_infuse_d6/drokstories.tpl.php La línea donde pone "Read the Full Story":
===== rokscroller ===== http://113.20.7.57/~nhoj/index.php ====== Modulos interesantes ====== ===== Mogul ===== Content types etc... para podcasts Enlace interesante: http://www.cmsquickstart.com/blog/build-podcast-archive-drupal-7 ===== Bundle copy ===== En su version 7.x-2.x-dev permite clonar content types https://www.drupal.org/project/bundle_copy ====== Errores ====== ===== Congelado en la pantalla de base de datos durante la instalacion ===== Sintoma: 1. No hay forma de proseguir de la pagina: install.php?profile=standard&locale=en&op=start&id=1 2. Solo ha creado 32 tablas mysql -u root -p -e "use drupal; show tables;" 3. Error drush Solucion: 1. Editar php.ini sudo cp /etc/php5/apache2/php.ini /etc/php5/apache2/php.ini.bak sudo vim /etc/php5/apache2/php.ini 2. Ajustar session.cookies_secure=0 3. Reiniciar apache sudo service apache2 restart 4. Borrar cache de navegador 5. Repetir el proceso de instalacion desde 0 (filesystem borrado/creado y lo mismo con la base de datos)