xF2 Add-on - Archive Site | NulledTeam UnderGround | The Best Scripts Site In The World
Archive Site

xF2 Add-on Archive Site 1.1.1

No permission to download
Compatible XF Versions 2.x
2.0, 2.1
For a site that is no longer accepting new content, you might want to put it into "read only" mode, keeping the content available online for users but preventing users from logging in or posting new content.

You will also want to optimise the site to remove unnecessarily functionality for guests and to improve performance.

There are quite a few configuration changes you can make using the admin UI alone, but there are some elements you will need help to change - which is where this addon comes in (see notes at the bottom of this page for limitations).

I have written a full tutorial on steps to consider when archiving a site, which is intended to followed in conjunction with using this addon: https://www.nulledteam.com/resources/how-to-archive-a-xenforo-forum-to-make-it-read-only.7302/

This addon provides the following functionality:
  • a UI and CLI tool to remove passwords from users to prevent them logging in and to minimise the risk of credential leakage if your site ever gets hacked (selected users can retain login rights for maintenance and testing purposes)
  • prevents emails from being sent to archived users
  • provides a meaningful message to users if they try to log in, informing them that the site has been archived
  • prevents archived users from resetting their passwords using the forgot password link
  • show a message to users below the title on the home page
  • replace the "you must log in to post" message below content on thread pages with a custom message and optionally a link (eg to a new site)
  • hides UI elements from guests:
    • New posts button on forum home page
    • What's new link in header on mobile devices
    • Followers list on member profile pages
    • Following list on member profile pages
    • Lock symbol on locked threads in thread list
    • Link to latest member from forum statistics widget
    • Gallery BB Code link on media pages
    • Members online widget
Setup instructions

The process to archive users works on all users except the following:
  • super admins
  • any other user_id listed in the $config['archiveSiteProtectedUsers'] setting
Any user you wish to maintain login access for should either be promoted to super-admin status, or add their user_id to the array in your config.php file:
PHP:
You don't have permission to view the code content. Please Log in or register now. Log in or register now.
For example, to allow user_id 5 and 293 to retain login access, add the following line to your config.php file:
PHP:
You don't have permission to view the code content. Please Log in or register now. Log in or register now.
XenForo will not allow you to remove all super admin users, so you will always retain the ability to log in from at least one user account, even if the config option is not set.

Important: if you have any super admin users who you no longer wish to have login rights to your site, be sure to demote them from super admin status.

Once the addon is installed, review the options to set your message on the home page or at the end of content pages (remove the messages from the options to hide them).
1590707445043.png


Archiving users

After you have configured your super admins and any other protected users and installed the addon, you should visit the Archive Site functions in the User section of the admin UI.

The List Protected Users screen shows all users who will retain login access:
1590707453992.png


The List Archived Users screen shows users who have already had their passwords removed:
1590707462112.png

The List Active Users screen shows users who have not yet been archived:
1590707471139.png


To archive users, use the Archive Users screen, validate your protected and active users, check the confirmation box and click Archive:
1590707480566.png


To restore access for a users, simply generate a new password for them and add their user_id to the protected users list in the config.php file.

UI elements hidden for guests by this addon:

Forum home:
1590707491883.png


Thread list:
1590707500843.png


Thread view:
1590707508580.png


Mobile header:
1590707519042.png


Member profile:
1590707527155.png


Thread list:
1590707533868.png


Media view:
1590707541924.png


Notes:
  • other UI elements can be hidden using admin settings - follow the tutorial for full instructions
  • template modifications are designed to work with the default theme and UI elements might not be hidden correctly on customised themes - some additional work might be required
  • I have not yet implemented any changes for XF Resource Manager - that is on my todo list.

Todo list:
  • look at UI elements for Resource Manager and hide any which don't make sense for guests
  • consider an option to automate the bulk removal of user conversations
  • consider a tool to remove deleted posts made by deleted users (you can't search for the posts because they are "guest" posts, nobody can see them because they are deleted, and it won't affect the overall post count)
  • consider a tool to make bulk changes to user date of birth (personal information) and other profile fields such as location
Author
AnimeHaxor
Downloads
3
Views
54
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from AnimeHaxor

Latest updates

  1. v1.1.1 bugfix

    v1.1.1 bugfix: hide birthday and thread not open message only for guests v1.1.0 (unreleased)...