Magento: Move a category programmatically

It turns out that Magento has some really convenient functions already made at its core, which i don’t know about and this is one of them. Mage category model object includes move() function, that manages just that. Lets view simple code example for better understanding.

$categoryId = 2269;
$parentId = 2268;

$category = Mage::getModel('catalog/category')->load($categoryId);
$category->move($parentId, null);

When this is executed your category should have a different path, if changes are not visible than try to clean cache and reindex data. After you have done that everything should be ok.