[resolu] Comment créer un GCB (global content bloc) via UDT ?

Support en français pour CMS Made Simple.

Moderator: jce76350

Locked
athena_pallas
Power Poster
Power Poster
Posts: 272
Joined: Wed Sep 13, 2006 4:41 pm
Location: Belgium

[resolu] Comment créer un GCB (global content bloc) via UDT ?

Post by athena_pallas »

Bonjour,

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);
Voici l'UDT qui ne s'occupe que de la création de la page et qui fonctionne également parfaitement

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();
Par contre, si je les appelle l'un à la suite de l'autre, le bloc de contenu global n'est pas créé.

[resolu : après upgrade du CMS et de tous les modules, ça fonctionne]

Merci pour vos réponses.
Last edited by athena_pallas on Thu Apr 15, 2010 2:10 pm, edited 1 time in total.
Locked

Return to “French - Français”