Ну, в общем-то, какого-то специального алгоритма тут не существует к сожалению (или к счастью), разве что процесс несколько упростится за счет того, что сайт уже разработан на Smarty и логика разделена с представлением. Шаблоны Smarty надо будет перенести в шаблоны CMS, а потом смотреть какие данные в них использовались и искать аналоги в CMSMS. Если аналогов 100% нет - самый простой путь - писать user-defined tags с этими самым assign, чтобы дать шаблонизатору нужные данные.