Tout est dans le titre ;D
Je cherche depuis des jours dans les forums tant EN que FR pour trouver les instructions nécessaires pour créer automatiquement un bloc de contenu global et l'alimenter via un tag défini par l'utilisateur.
Via le gestionnaire d'événements, lorsque l'administrateur crée un nouvel utilisateur FEU, j'ai un UDT qui crée automatiquement une page au nom de cet utilisateur. Ensuite, il faut créer un BCG qui porte le même nom et c'est là que ça cale.
Voici un UDT qui ne s'occupe que de la création du GCB et qui fonctionne parfaitement
Code: Select all
global $gCms;
$db = &$gCms->GetDb();
$sql = "INSERT INTO `cms_htmlblobs` (`htmlblob_name` , `html` ) VALUES ( 'htmlblob_name', 'contenu html')";
$result = $db->Execute($sql);
Code: Select all
global $gCms;
// Lets add a new page of content for the user
$alias = $params['name'];
$content= $alias;
$parentid = -1;
$contentops =& $gCms->GetContentOperations();
$contentobj = $contentops->CreateNewContent('content');
$contentobj->SetOwner("1");
$contentobj->SetCachable(true);
$contentobj->SetActive(true);
$contentobj->SetShowInMenu(true);
$contentobj->SetLastModifiedBy("1");
$contentobj->SetMetadata('');
$contentobj->SetHierarchyPath('prive/' . $alias);
$contentobj->SetName($alias);
$contentobj->SetAlias($alias);
$contentobj->SetPropertyValue('content_en', $content);
$contentobj->SetTemplateId(23);
$contentobj->SetParentId(56);
$error = $contentobj->ValidateData();
if ($error === FALSE) {
$contentobj->Save();
global $gCms;
$contentops =& $gCms->GetContentOperations();
$contentops->SetAllHierarchyPositions();
return $contentobj;
} else {
print_r($error);
die("dying");
}
$contentops =& $gCms->GetContentOperations();
$page = $contentops->LoadContentFromId(15, true);
echo $page->Show();
[resolu : après upgrade du CMS et de tous les modules, ça fonctionne]
Merci pour vos réponses.