Support » Plugins » Can WordPress handle 3,000 categories?

  • Hey all, just looking for some feedback on my upcoming project. I’m hoping to be able to use wordpress as a lyrics database manager.

    My question is:

    Is there any limit to wordpress’ scalability?

    I’d probably cry if I input 3,000+ categories and 20,000+ songs by hand and then it turned out it couldn’t handle it and I needed to transfer those 20k+ pages once more.

    Also does anyone have any tips, comments, or suggestions for me? I know there’s some great brains out there, just wondering if any plugins or ideas come to mind?

    THANKS for running such a helpful forum everybody!

Viewing 14 replies - 1 through 14 (of 14 total)
  • I’ve got a second similar question… It’s running fine so far (yay!) but does anyone have/know of a plugin or theme change I could make to allow for only the first 250 or so categories get shown per page while in “Manage: Categories” in the WP-Admin panel?

    With 3,000+ categories and descriptions for each, just chaning a category’s info could cost me a few megabytes in bandwidth 🙁

    Any ideas? Thanks again!

    Moderator Samuel Wood (Otto)

    (@otto42) Admin

    Holy cow. I think that something else might suit your needs better than wordpress for such a thing. Perhaps a wiki, or a more general purpose database system.

    WordPress is really geared towards a different set of criteria, and while you could probably make it work, you have to wonder if there’s not a better way to start out in the first place.

    Yeah, you want something custom. That isn’t a blog, that’s just a huge custom database… Why you’d want to shoehorn it into a blog, I don’t know…

    As the others have said, WordPress may handle something like that, but it’s hardly designed to, and you’d be way better off with something built to handle such a project

    That being said… How about going with a minimal number of categories, but using one of the tag plugins instead for the 3000? UTW, for example, would work well I’d think.

    And tags can work like categories — click a tag and see all the posts that also have that tag, for example.

    One thing i’d do is make sure your content is extractable – ie, it’s valid markup with no inline styles, so that if you want to export it and use it elsewhere at some point you can.

    We’re just finishing a site in WordPress 1.5 which rapidly grew to 2,500 pages (way above expectations). The amount of work i’ve had to do to get things usable… for example, the internal function that generates a nested list of all the page titles is really inefficient, and is used on more pages than you’d think!

    Hmmm, well that’s a downer. Even if I was running a fully dedicated server the software just couldn’t handle it?

    I had designed my own template which made it unecessary to “shoehorn” anything, but if you all truly believe it will not work, I wont continue.

    well pfft. I think it’d work fine going the tags route.

    Software can handle it fine. But the presentation of 3k categories would be beyond tedious and fast approaching useless. You’d have to hack some core files to see more than 250 categories in the Post screen, for example.

    But tags…

    Granted, until you try, who knows?

    again, is there any particular reason you’re so set on using wordpress? It can handle it, but it’s just not what this is supposed to use…

    I had designed my own template which made it unecessary to “shoehorn” anything

    The template/theme has nothing to do with it — it’s the DATA. Sounds like you have a large database, custom format/info… is there a particular reason you want it in WP specifically?

    I mean, I can make WP plugins that have stuff jumping through hoops, but when I need custom data I build a custom PHP system. 😉


    In response to your question:
    Is there any limit to wordpress’ scalability?

    Only the limit of your programming ability, and the data limit of your web server. You would need to tweak a few things in the code to make it work for your needs. I’ve done that to run a system with 1000’s of users.

    I don’t understand what functionality WordPress affords you as a lyric database manager. If you don’t understand how to construct a database or how to program one, you won’t likely be able to conform WordPress to your needs. And if you could, it would make sense to do so only if WordPress had many features you could use in your management of the site. A lyric database site in my view would have such a different architecture that starting from WordPress would not be prudent, but maybe you see something I don’t.

    Well I planned to make it much more than just a content manager… there’s so many wonderful plugins to make use of.. I am currently running an insurance website with 25,000+ posts but only ~50 categories so have not run into the categories per page problem…

    I don’t have any real programming ability, I can understand it if I look at it hard enough.. but beyond that I’m toast.

    Does anyone know how to edit the “core” files to show all categories in alphabetical order when I click on “Manage>Categories” but to only show say 250 categories at a time?

    Otherwise I’ll be losing out on a lot of bandwidth.. and possibly timing out my server trying to load a page with 3,000+ descriptions.

    If I didn’t plan to put detailed descriptions for each this wouldn’t pose a problem and I suppose I could cut that out… but it would take away from the site considerably.

    Thanks again for everyone’s input, this is helping me considerably.

    To edit the “core” files to show all categories in alphabetical order and only 250 categories at a time, you need to edit the SQL query in the function cat_rows() in admin-functions.php.

    I believe they are already sorted alphabetically, which is the ORDER BY cat_name you’ll see in the SQL statement.

    To limit the query to 250 at a time, you’ll need to pass a variable to the function telling it which number you’re on. The query will need to have something like “LIMIT $start, 250” added to the end of it, and then you’ll need to pass $start to the function, with the default being 0.

    This will mean that by default the categories will be listed 0-249, but then you’ll need to pass a new variable to the function to increment the start number by 250 so that you get 250-499 and then 500-749. The resulting SQL will have added LIMIT 250, 250 and LIMIT 500, 250 dynamically through your $start variable.

    Moderator Samuel Wood (Otto)

    (@otto42) Admin

    I don’t have any real programming ability, I can understand it if I look at it hard enough.. but beyond that I’m toast.

    Yeah, that was sort of my point. Unless you are capable of modifying the existing wordpress code to fit your needs better, then it really makes more sense to start from something that already is closer.

    Essentially, you’re wanting a database (for actual data) with a web interface. The problem is that WordPress is geared towards making blogs and other sorts of things. Yes, it’s a database, but the format of the data is different. You’ve got all these plugins, true, but so do other systems.

    Consider a wiki, for example. It’s a more freeform way to put textual data on a website. You create pages on the fly, you put in text, you can easily modify them as needed, it keeps history of changes, etc, etc. Organization can be as ad-hoc as you want it to be. A wiki is not as oriented on a date of each post or as any sort of a continuing system like WordPress is. Wiki’s are just as advanced in terms of software, and plugins (or something similar) exist for them as well. They would be infinitely more along the lines of what you probably want.

    Unless you *are* a programmer, and willing/able to make changes to the actual software, then it makes a bit more sense to pick the right tool for the task instead of simply picking something which, while you already know and use it, may not be as suited for the task itself.

Viewing 14 replies - 1 through 14 (of 14 total)
  • The topic ‘Can WordPress handle 3,000 categories?’ is closed to new replies.