Forums / Developer / Code will create drafts, but not publish them

"Please Note:
  • At the specific request of Ibexa we are changing this projects name to "Exponential" or "Exponential (CMS)" effective as of August, 11th 2025.
  • This project is not associated with the original eZ Publish software or its original developer, eZ Systems or Ibexa".

Code will create drafts, but not publish them

Author Message

Gabriel Ambuehl

Sunday 30 January 2005 8:17:38 am

I use the following code to craate a content object:

$class=& eZContentClass::fetch( $classID );
$newObjectInstance=&$class->instantiate(false, $sectionid);

$nodeassignment=$newObjectInstance->createNodeAssignment($class_content['default_placement_node'], true);
$nodeassignment->store();

$newObjectInstance->setAttribute('published',$time);
$newObjectInstance->setAttribute('is_published',true);
$newObjectInstance->setAttribute('modified', $time );
$newObjectInstance->setAttribute('status',1);
$newObjectInstance->store();

After messing with this for several hours, it still only creates Drafts but doesn't publish them (drafts show Not Published Yet for modified, published instead of the time). What am I overlooking?

Visit http://triligon.org

Sven Berg Ryen

Sunday 30 January 2005 10:37:43 am

Hi Gabriel!

I haven't ever tried manually setting the "published" and so attributes, so I can't comment on your code.

I think it would be easier if you, after storing the objectInstance, published it:

    $operationResult = eZOperationHandler::execute( 'content', 'publish', array( 
       'object_id' => $newObjectInstance->attribute( 'id' ), 'version' => 1 ) );

If I were you, I'd take a look at the file /cronjobs/rssimport.php.
In that file, you'll see one of the ways of adding objects to ez by code.

You may also need to create a version 1 of the object:

    $version =& $contentObject->version( 1 );
    $version->setAttribute( 'status', EZ_VERSION_STATUS_DRAFT );
    $version->store();

HTH, and have a nice day! :)

Cheers,

Sven Ryen
sven.ryen at maxus.no

Gabriel Ambuehl

Sunday 30 January 2005 11:41:05 am

Seems like that did the job... Many thanks!

Visit http://triligon.org