Jump to content

Invision Community Blog


Managing successful online communities

Matt
 Share


IP.Board 3.3 Dev Update: Archive System

One of the many pleasures of running your own forum is watching it grow as the years roll by. Sometimes it's fun to go back and look at old topics but they just get pushed further and further away from the first page until you end up with a large database full of posts that rarely get seen.

Perhaps you run a massive forum with 10 million posts or more and you're starting to reach MySQL database limits and considering pruning back posts from 10 years ago just to free up some space. Maybe you just want to keep your number of active posts as low as possible for ultimate efficiency.

IP.Board 3.3 has a new an innovative way of handing these problems!

Introducing the archive system
Brand new to IP.Board 3.3 is the archive system. This is a very easy to use system of archiving off old posts. You get complete control over what is archived too but more on that a little later. The archived posts are moved to a different table but it doesn't have to be in your current database or indeed your current server (though of course it can be too)! You can set up a new server just for older posts and move them all there thus freeing up your forum post table again. This means less overhead for MySQL to manage when people are browsing your community.

Searches are faster, look-ups are faster and everything zips along.

Archived topics still show in the forum view as normal. You can still view them as normal. They still get all the skinning as normal so everything works just like a regular topic. Their URLs do not change so SEO is not impacted.

However, as they are archived, you cannot reply or follow the topic, so all that is removed from the display which actually saves your server a lot of work! It doesn't have to load up the editor javascript or load up any follow data from the database. In testing, it actually saves 30% database access showing an archived topic. The topic title isn't changed and the URL isn't changed so there's no need for complex 301 code redirects for search engines.

If you change your mind or archive a topic without meaning to, you can unarchive a topic.

The Admin CP Interface
The Admin interface consists of just two screens. The overview deals with a snap-shot of stats and data and the manage rule screen is where you set up which topics to archive off.

Let's start with the overview screen. Here you can see how many topics have been archived already via the big progress bar at the top. Underneath is the number of topics to unarchive. In this screen shot, I've decided to unarchive all topics that have had a post within the last 600 days.



Here's where you can set the unarchive preferences:


Now let's take a look at the rules screen. It's simple enough. There are two tabs "Archive Where" and "Don't Archive Where". This allows you to either set up an inclusive or exclusive list of rules.
The green strip at the top shows you how many topics the current settings will archive. This is automatically updated each time you change a setting so you get an on-the-fly update of how many topics to archive when configuring this form.



A quick look at the forum filter:


And the topic starter filter:


The public interface
So how do you know when a topic is archived? Simple!



When viewing the topic as an administrator, you get the option to selectively unarchive a topic - and this will exclude it from being archived again.


A regular member or guest will just see:


Summary
We really feel that this feature will benefit everyone.

  • You can effectively lock older topics to prevent confusing 'bumps' or replies after a few years
  • Free up your forum post table so it runs speedy again by giving MySQL less old data to have to work with all the time
  • Use a remote server to house the archives so it can freely grow over the years
  • Get a 30% reduction in SQL usage when viewing archived topics which is great news if you get a lot of good search engine placement.
  • Quick and easy to configure
  • Archives are done via a task that runs at regular intervals. It does a small number of posts each execution to prevent timeouts.
  • It doesn't confuse search engines as the title and URL don't change (and even the H1 tag doesn't change).

We hope you enjoy using the new archive system!
 Share

Comments

Recommended Comments



are there only one rule or do you create a RULE SETS?

Rules:

My Archive Rule 1 : summary of settings. (archive where: forums x,y,z > 300 days)
My Archive Rule 2 : summary of settings (archive where: forum a,b,c 150 days, don't archive: Forum a, locked, started by Admin)
My Archive Rule 3: summary of settings (archive where: all forums, Last Reply > 800 days )

are they accumulative or how is it processed as to not create conflicts?

Is the rules a DO and DON'T Operation? Archive all these things except don't do it when these conditions are met?

Topic Last Post: would read better written: Topic Last Reply

is there a way to see when a topic was last viewed and use that as a way to archive?

Link to comment
Share on other sites

Cool stuff, it should definitely help some of the bigger boards out.

Speaking of archives, you should consider adding a per-usergroup data "archive" download feature that effectively allows a member to download all of their posts, PMs, etc. This sort of thing is present on Facebook and Google+ and can come in handy if a user has a lot of potentially useful content on a site but hasn't otherwise backed it up. To help restrict excessive downloads, there could be a "download x per y days" limit, and if the feature is integrated with Nexus, there could be an option to require the user to pay a certain amount prior to downloading.

Link to comment
Share on other sites

1- If a number of users were following the topic before it was archived, will that list of users still be there if the topic is unarchived (so, is that info still stored in the new DB table)?

2- You can selectively unarchive a topic, but can you selectively archive one?

This was asked before and I also would like to know this.
This feature I believe was the best I've seen in a while.
Thank you.

Link to comment
Share on other sites

  • Management

You cannot selectively archive right now. Yes it clears out the follows and other data as, though you CAN unarchive topics, you don't really want to make a habit of unarchiving as that defeats the purpose of an archive system :)

Link to comment
Share on other sites

Matt, also take care of this new area for SEO improvements. this area must need an option in ACP. would it indexed or not in Search engines. because this is the same content that already indexed. maybe it produce duplication's.

Link to comment
Share on other sites

  • Management

There is no duplication because the content isn't duplicated. It's archived 'in-place'. The URL doesn't change, the content doesn't change (apart from some page elements being removed) and it's still viewable via the normal forum interface.

Link to comment
Share on other sites

I implemented it on our forum but found a few drawbacks.

A forum (at least ours is) doesn't have rigid structure. Meaning sometimes you may need to add forums and move topics to those new forums. The archived topics can't be moved , therefore I had to unarchive everything. 2000+ topics.

We then moved the topics to the correct forums and I hoped to archive everything again in one stroke. Apparently I can't archive the topics that used to be archived anymore. For some reason they remain unnoticed by the archiver.

If there's a solution to this I'd love to hear it. Thank you.

Link to comment
Share on other sites

Un-archiving topics permanently deletes hidden posts.

 

Have you filed a bug report on this already?

 

It would be a great help if you're willing to take the time to do it. If not, I'll try and reproduce the bug myself and file a report on it.

 

Edit: I see you already have,

http://community.invisionpower.com/resources/bugs.html/_/ip-board/unarchiving-deletes-hidden-posts-r42622

Link to comment
Share on other sites




Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

Important Information

We use technologies, such as cookies, to customise content and advertising, to provide social media features and to analyse traffic to the site. We also share information about your use of our site with our trusted social media, advertising and analytics partners. See more about cookies and our Privacy Policy

×