Contenu populaire
ven, 6 aoû, 2010
Voici comme on peut recuperer les valeurs d'un champ CCK pour l'utiliser dans un autre module :
<?php $fields = module_invoke('content', 'fields','nom_fileld'); $values = module_invoke('content','allowed_values',$fields); ?>
ven, 6 aoû, 2010
Le module soundmanager ne lit pas correctement le player !!!!!
La solution :
Dans le fichier soundmanager2_config.js à la ligne 10, il faut tout simplement désactiver le useHighPerfermance.
mer, 24 nov, 2010
Il existe un superbe module dans Drupal qui nous permet de structurer les nodes d'une manière hiérarchisé parent enfant sous enfant, ce module est Node Hierchy.
Par contre ce module manque un peu de développement et surtout sa version 2.x qui tarde à venir.
Dans cette exemple on va s'intéresser au poids du fieldset de ce module qui est à 10 par défaut.
J'utilise la fonction hook_content_extra_fields() de CCK qui nous permet de gérer ça.
ven, 6 aoû, 2010
Pour ajouter une views avec votre code et afficher le résultat voici une fonction simple qui fait tout le boulot pour vous:
<?php /* $nom => le nom de la views $type => le type : default,feed,page etc. $args => les arguments de la views ( Valable si la views possède des arguments ) N.B : Pour les versions < .7 c'est un array et pour >.7 c'est un ensemble de vars */ $output = views_embed_view($nom, $type = 'default',$args); ?>
ven, 6 aoû, 2010
Une erreur sur les dernières versions de views quand on utilise comme argument un tid (identifiant du terme)
Voici l'erreur comme elle s'affiche :'views_plugin_argument_default' not found in
\sites\all\modules\views\modules\taxonomy\views_plugin_argument_default_taxonomy_tid.inc
Pour contourner cette erreur quand on utilise les arguments de la taxonomy:
--- taxonomy.views.inc 2010-04-06 12:59:29.000000000 -0700 +++ taxonomy.views.inc 2010-04-13 15:19:03.000000000 -0700 @@ -462,6 +462,7 @@ function taxonomy_views_plugins() {
ven, 6 aoû, 2010
Voici un petit code en Jquery qui va ouvrir tous les liens sortant de votre site dans une nouvelle fenetre.
mer, 18 aoû, 2010
Pour ajouter un fichier CSS ou javascript dans notre développement Drupal dispose d'une fonction pour cela:
<?php // Ajouter un fichier CSS drupal_add_css($path = NULL, $type = 'module', $media = 'all', $preprocess = TRUE); //Ajouter un fichier js drupal_add_js($data = NULL, $type = 'module', $scope = 'header', $defer = FALSE, $cache = TRUE, $preprocess = TRUE); ?>
mer, 18 aoû, 2010
Voici une petite astuce pour récuperer l'url du site sous Drupal:
mar, 17 aoû, 2010
Voici comment récuperer le chemin relative d'un module ou d'un thème
<?php // Pour les modules drupal_get_path('module','nom_du_module'); //Pour les themes drupal_get_path('theme','nom_du_theme'); ?>
mer, 11 aoû, 2010
MySQL Workbench permet aux DBA, aux développeurs ou aux architectes de bases de données de concevoir, de générer et de gérer visuellement tous les types de bases de données, y compris Web, OLTP et applications d’entrepôts de données. Il comprend tout ce dont un modélisateur de données a besoin pour créer des modèles ER complexes.
ven, 6 aoû, 2010
Sous PHP il manque parfois des fonctions très utiles comme pour copier un dossier avec tout son contenu.
Voici une petite fonction que j'utilise pour contourner ce manque :
<?php function copy_dir ($dir2copy,$dir_paste) { // On vérifie si $dir2copy est un dossier if (is_dir($dir2copy)) { // Si oui, on l'ouvre if ($dh = opendir($dir2copy)) { // On liste les dossiers et fichiers de $dir2copy while (($file = readdir($dh)) !== false) { // Si le dossier dans lequel on veut coller n'existe pas, on le créé
jeu, 16 sep, 2010
Si vous avez installé SPIP en version 2.1, un bug introduit il y a 10 mois vient de faire « disparaître » l’ensemble de vos articles sur votre site. Pas de panique, ce n’est que l’affichage qui est cassé, une simple mise à jour vers la version SPIP 2.1.2 suffira à rétablir la situation.
mar, 17 aoû, 2010
ven, 6 aoû, 2010
Jusqu'à maintenant, impossible de supprimer la totalité d'un dossier en PHP tant que ce dernier n'est pas vide (aucun sous dossier ou fichier)
Voici une petite fonction que j'utilise pour contourner ce manque :
<?php function supprimer_dossier($directory, $empty = false) { if(substr($directory,-1) == "/") { $directory = substr($directory,0,-1); } if(!file_exists($directory) || !is_dir($directory)) { return false; } elseif(!is_readable($directory)) { return false; } else {
Tout d'abord je vous souhaite à toutes et à tous la bienvenue dans ce blog.
Pourquoi ce blog ?
Ce blog existait bien avant, mais non public et il me servait de bloc-notes pour mes petites astuces et liens utiles du milieu du WEB et plus précisément le Développement. Ces derniers jours, j'ai refait l'identité visuel de mon site www.medev.ch et il me restait un coin vide où je ne savais pas quoi mettre. Et de là l'idée est venue. Pourquoi ne pas publier un peu de ces articles et ajouter un petit bloc pour le blog?
mer, 11 aoû, 2010
Afin de vérifier les e-mails laisser par les visiteurs dans un formulaire, nous utilisons les expressions régulières pour faire le test dont voici un exemple de fonction (CMS Drupal):
<?php function valid_email_address($mail) { $user = '[a-zA-Z0-9_\-\.\+\^!#\$%&*+\/\=\?\`\|\{\}~\']+'; $domain = '(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.?)+'; $ipv4 = '[0-9]{1,3}(\.[0-9]{1,3}){3}'; $ipv6 = '[0-9a-fA-F]{1,4}(\:[0-9a-fA-F]{1,4}){7}'; return preg_match("/^$user@($domain|(\[($ipv4|$ipv6)\]))$/", $mail); } ?>
ven, 6 aoû, 2010
Un probleme dans la tabulation du module quicktabs sous IE 7.
Un patch existe sur ce lien http://drupal.org/node/487518
le patch est :
Index: quicktabs.js =================================================================== --- quicktabs.js (revision 26) +++ quicktabs.js (working copy) @@ -41,13 +41,11 @@ this.tabIndex = el.myTabIndex; this.qtid = el.qtid; var qtKey = 'qt_' + this.qtid; - var i = 0; for (var key in Drupal.settings.quicktabs[qtKey].tabs) { - if (i == this.tabIndex) {
lun, 9 aoû, 2010
Sur cet exemple, on va voir comment on peut configurer Drupal pour se connecter sur plusieurs bases de données.
Pour commencer je reviens sur le faite que Drupal enregistre les configurations de la BDD sur le fichier sites/default/settings.php et c'est là où on va changer un peu notre configuration.
Pour la BDD c'est stocké sous l'un de ces formats (selon notre type de BDD) :
* $db_url = 'mysql://username:password@localhost/databasename';
* $db_url = 'mysqli://username:password@localhost/databasename';
* $db_url = 'pgsql://username:password@localhost/databasename';
mer, 25 mai, 2011
Voici une fonction que j'utilise très souvent pour faire des requettes, plus performante (cache views) et facile à créer, Drupal dans la base de données.
Cette fonction est utilisé par le module views de Drupal et qui permet de récupérer un tableau de résultats de la vue :
Voici un exemple:
// $name : est le nom de la vue // $display_id: le type d'affiche qu'on souhaite utiliser exemple default views_get_view_result($name, $display_id )
mer, 25 mai, 2011
La fonction PHP t() de Drupal permet de traduire un texte dans une autre langue.
Il existe une deuxième fonction, même utilité, mais cette fois-ci pour le javascript: Drupal.t()
Voici un exemple simple de ceci:
alert (Drupal.t ('Hello'));
Le Drupal.t () peut prendre jusqu'à deux arguments. Ils sont (dans l'ordre):
1. La chaîne qui devrait être traduite.
2. Un nom d'objet contenant des paires valeur / de substitution dans la chaîne.
Voici un bref exemple qui utilise à la fois:
var params = {
jeu, 1 sep, 2011
Warning: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings.
Si vous avez mis à jour le PHP d'une version 5.2 à 5.3, vous risquer surement de tomber sur ce Bug lors de la modification d'un noeud sur Drupal.
Afin d'éviter ces erreurs il existe deux possiblités:
1 - Dans le fichier php.ini (Bien sûre si vous avez accès) ajouter ceci:
[Date]
; Defines the default timezone used by the date functions
date.timezone = "votre fuseau horaire"
ven, 6 aoû, 2010
Voici donc comment on peut utiliser CCK pour utiliser le poids d'un champ dit "extra" qu'on a crée et qu'on veut le placer dans notre formulaire de node, selon le classement fait dans la gestion des champs de cck.
Voici les démarches et les fonctions à utiliser:
ven, 6 aoû, 2010
Une solution pour échaper aux problèmes CSS de IE ?
Jquery nous offre une fionction qui nous permet de détecter le navigateur et la plateforme du visiteur. Avec ça on peut par exemple manipuler les Class CSS de notre page.
ven, 6 aoû, 2010
Pour créer des redirections au niveau des nom de domaines synonymes voici le scipt à placer dans votre .htaccess (Attention ça ne marche que sur serveur Apache)
RewriteCond %{HTTP_HOST} ^example.com$ [OR] RewriteCond %{HTTP_HOST} ^www.example.com$ RewriteRule ^.*$ "http\:\/\/example\.net" [R=301,L]
Obliger une redirection de mondomaine.com à www.mondomaine.com :
RewriteCond %{HTTP_HOST} ^example\.com$ [NC] RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301]
mar, 21 déc, 2010
Le module Search de Drupal combiné avec le module Node indexe, par défaut, tous les types de contenus. Maintenant si on veut choisir parmi les types de node à indexer, voici deux solutions que j'utilise pour choisir les types de noueds à indexer:
- La première consiste à activer le module search_config, mais cette solution est pratique si on veut utiliser que le module search et ces fonctions de recherche.

