I have to import about 1,000+ Categories that are 4 levels deep. Is there an easy want to bulk import categories? I have DataGrab, but I don't think it handles Categories. I would also rather not mess with the database if I don't need to, as suggested here: What's the best way to bulk add or import categories?

  • Database is the quickest, if it is a one-of import. I'ld setup an excel/numbers spreadsheet to add category id (from auto_increment value) beforehand, and set parent_id and sort_order. Duplicate the categories table and try it out on that.
    – GDmac
    Jun 16, 2014 at 21:07
  • @GDmac - it's just one table I need to worry about, right? Anyway, I inserted 4068 categories. Now I get this: Fatal error: Allowed memory size of 67108864 bytes exhausted (tried to allocate 35 bytes) in /public_html/system/expressionengine/libraries/api/Api_channel_categories.php on line 175 Jun 17, 2014 at 0:53
  • 64MB memory limit is quite low. Do you have custom category fields and/or descriptions as well? Maybe 4000 cats is pushing it, maybe go with a 'tags' or 'related entries' solution.
    – GDmac
    Jun 17, 2014 at 8:00

2 Answers 2


Data Grab does support category importing (See configuration grab) but as part of entry import (as far as I'm aware), so possibly discard entry information after import if it's not needed...? You could also possibly have all the categories imported with 1 entry?

If a category already exists, it won't create a new one but utilise that one.

By accident I discovered it handles multiple depths creation and assignment as I don't recall seeing any documentation on this. I had some categories with "/" in the title - it uses this as a category parent/child identifier. I've only stumbled on this as a 2 depth solution, so unknown if 4 levels would work, but if you already have DataGrab it's worth updating to latest version and giving it a test.

Example category names:

  • Category1/Category1a
  • Category1/Category1a/Category1a1/Category1a1a (unknown if this works)

If you import "Category1/Category1a" with first creating it's parent, the parent is automatically created with the url_title generated automatically from the name.

enter image description here


There's Solspace Importer too but I don't think either that or DataGrab cater to categories with a structure that deep. :/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.