logo

Types de blocs supplémentaires (EBT) – Nouvelle expérience de Layout Builder❗

Types de blocs supplémentaires (EBT) – types de blocs stylisés et personnalisables : diaporamas, onglets, cartes, accordéons et bien d’autres. Paramètres intégrés pour l’arrière-plan, la boîte DOM, les plugins JavaScript. Découvrez dès aujourd’hui le futur de la création de mises en page.

Démo des modules EBT Télécharger les modules EBT

❗Types de paragraphes supplémentaires (EPT) – Nouvelle expérience Paragraphes

Types de paragraphes supplémentaires (EPT) – ensemble de modules basé sur les paragraphes analogiques.

Démo des modules EPT Télécharger les modules EPT

Défilement

Problème avec hook_block_info

22/02/2025, by Anonyme (non vérifié)

 

 Bonjour !

J'essaie de créer des blocs par programmation.

Je fais cela dans mon module comme suit

function about_block_info(){
	$blocks['about_company'] = array(
		'info' => 'À propos de l\'entreprise',
		'status' => TRUE,
		'region' => '',
		'weight' => 0,
		'visibility' => 1,
		'cache' => DRUPAL_NO_CACHE,
	);
	
	$blocks['first_red_text_item'] = array(
		'info' => 'Texte contextuel pour la première colonne du bloc rouge (page d\'accueil)',
		'status' => TRUE,
		'region' => '',
		'weight' => 0,
		'visibility' => 1,
		'cache' => DRUPAL_NO_CACHE,
	);
	
	return $blocks;
}

function about_block_configure($delta){
	$form = array();
	
	switch($delta){
	case 'about_company':
		$form['about_content_title'] = array(
			'#type' => 'textfield',
			'#title' => 'Titre du bloc sur la page d\'accueil',
			'#size' => 15,
			'#description' => 'Par exemple : "À propos de l\'entreprise"',
			'#default_value' => variable_get('about_company_title','À propos de l\'entreprise'),
		);
		$form['about_content_text'] = array(
			'#type' => 'textarea',
			'#title' => 'Texte minimal sur la page d\'accueil',
			"#rows" => 5,
			"#cols" => 20,
			'#description' => 'Sera affiché comme texte d\'aperçu sur la page d\'accueil',
			'#default_value' => variable_get('about_company_text','C\'était le premier établissement éducatif indépendant officiellement enregistré dans notre pays, qui à l\'époque était encore appelé URSS. Il a été créé dans le but de former des traducteurs professionnels de haut niveau, car il n\'y avait pas d\'équivalents de tels établissements d\'enseignement en URSS à l\'époque. '),
		);
		$form['address'] = array(
			'#type' => 'textfield',
			'#title' => 'Adresse de la page avec les informations sur l\'entreprise',
			'#size' => 15,
			'#description' => 'Par exemple : about',
			'#default_value' => variable_get('about_company_address','about'),
		);
		break;
	
	case 'first_red_text_item':
		$form['first_red_text'] = array(
			'#type' => 'textarea',
			'#title' => 'Texte pour le bloc contextuel (première colonne)',
			"#rows" => 5,
			"#cols" => 20,
			'#description' => 'Texte contextuel',
			'#default_value' => variable_get('first_red_text1',''),
		);
		 $form['first_red_text_address'] = array(
			'#type' => 'textfield',
			'#title' => 'Adresse de la page à laquelle renvoie le texte contextuel',
			'#size' => 15,
			'#description' => 'Par exemple : about',
			'#default_value' => variable_get('first_red_text_address1',''),
		); 
		break; 
	
	
	
	}

	return $form;

}


function about_block_save($delta = '', $edit = array()){
	switch($delta){
		case 'about_company':	
			variable_set('about_company_title',$edit['about_content_title']);
			variable_set('about_company_text',$edit['about_content_text']);
			variable_set('about_company_address',$edit['address']);
		break;
		case 'first_red_text_item':	
			variable_set('first_red_text1',$edit['first_red_text']);
			variable_set('first_red_text_address1',$edit['first_red_text_address']);
		break; 
	}
	return;

}

:

 

Donc, dans l'administration, le bloc "À propos de l'entreprise" apparaît et fonctionne correctement, mais le deuxième bloc non. Où est l'erreur ?