Forums / Developer / Node's Url alias creation error
H-Works Agency
Monday 30 May 2011 8:32:42 am
Hello everyone,
I experienced that when you have a tree with multiple import cronjobs that do a lot of edit/delete/create you end up with a lot of node missing their "url_alias".
I know my report isn't very precise but has someone already experienced this problem ?
Is there a special command to execute after for example createAndPublish or updateAndPublish to prevent ending with /content/view/full/28348 url's ?
I know that bin/php/updateniceurl.php can do the job but what could be the cause of those missing aliases ?
Thanx in advance.
EZP is Great
Nicolas Pastorino
Tuesday 31 May 2011 12:43:02 am
Hi Martin,
I'd say re-publishing the content should do the deal (eg : execute the 'content' 'publish' operation anew, from PHP). Might need to be trimmed in case of large volumes. DelayedIndexing has to be enabled, at least in memory only.
Cheers,
-- Nicolas Pastorino Director Community - eZ Member of the Community Project Board eZ Publish Community on twitter: http://twitter.com/ezcommunity t : http://twitter.com/jeanvoye G+ : http://plus.tl/jeanvoye
Marko Žmak
Tuesday 31 May 2011 1:55:32 am
Maybe using something like this:
$operationResult = eZOperationHandler::execute( 'content', 'publish', array( 'object_id' => $object->attribute( 'id' ), 'version' => $version->attribute( 'version' ) ) );
in the import script would do the trick?
I used it in many import scripts and never had problems with url aliases.
P.S. For faster imports look at the discussion in this forum thread:
-- Nothing is impossible. Not if you can imagine it! Hubert Farnsworth
Tuesday 31 May 2011 2:12:42 am
Uhm thank you, i'll replace my createAndPublish with the execute method on content publish to see what happens.
Script start
Module start 'content'
Module end 'content'
Script end
Time used to render debug report: 0.0001 secs