Comment créer une catégorie et ses sous-catégories à l’aide d’un package?
Dans mon exemple, les catégories sont créées dans la BDD
mais pas avec les identifiants que j’ai fourni.
Paramètres système: Windows Vista, Modx Revolution 2.0.4, Php 5.2.8, Mysql 5.1,
Apache 2.2, pdo_mysql installé.
Voici la portion de mon code relative à ce problème:
$fields = array( 'id' => 1,'parent' => 0,'category' => 'Parent category');
$category1 = $modx->newObject('modCategory',$fields);
$fields = array( 'id' => 2,'parent' => 1,'category' => 'Subcategory 1');
$category11 = $modx->newObject('modCategory',$fields);
$fields = array('id' => 3,'parent' => 1,'category' => ' Subcategory 2');
$category12 = $modx->newObject('modCategory',$fields);
$fields = array('id' => 4,'parent' => 1,'category' => ' Subcategory 3');
$category13 = $modx->newObject('modCategory',$fields);
$categoryVehicleAttr = array(
xPDOTransport::UNIQUE_KEY => 'category',
xPDOTransport::PRESERVE_KEYS => false,
xPDOTransport::UPDATE_OBJECT => true,
xPDOTransport::RELATED_OBJECTS => true,
xPDOTransport::RELATED_OBJECT_ATTRIBUTES => array (
'Children' => array(
xPDOTransport::PRESERVE_KEYS => false,
xPDOTransport::UPDATE_OBJECT => true,
xPDOTransport::UNIQUE_KEY => 'category',
xPDOTransport::RELATED_OBJECTS => true,
xPDOTransport::RELATED_OBJECT_ATTRIBUTES => array (
'modTemplateVar' => array(
xPDOTransport::PRESERVE_KEYS => false,
xPDOTransport::UPDATE_OBJECT => true,
xPDOTransport::UNIQUE_KEY => 'name',
)
),
),
'modTemplateVar' => array(
xPDOTransport::PRESERVE_KEYS => false,
xPDOTransport::UPDATE_OBJECT => true,
xPDOTransport::UNIQUE_KEY => 'name',
)
)
);
$vehicle2 = $builder->createVehicle($category11,$categoryVehicleAttr);
$builder->putVehicle($vehicle2);
$vehicle2 = $builder->createVehicle($category12,$categoryVehicleAttr);
$builder->putVehicle($vehicle2);
$vehicle2 = $builder->createVehicle($category13,$categoryVehicleAttr);
$builder->putVehicle($vehicle2);
$vehicle2 = $builder->createVehicle($category1,array(
xPDOTransport::PRESERVE_KEYS => false,
xPDOTransport::UPDATE_OBJECT => true,
xPDOTransport::UNIQUE_KEY => 'category'
));
$builder->putVehicle($vehicle2);