Broken links are bad for business or reputation. Most visitors consider stale hyperlinks to be a sign of laziness, carelessness and disrespect them. Unfortunately, if you have a large website with thousands of external links or let say a VLE with hundreds of courses and lots of external references, it's really hard to identify what external links became dead, and it's even harder to fix them because you need to know the exact location of the broken links.
I am going to give you a possible solution specially designed for our Moodle site, but you can use it on other websites as well. It is not perfect and it needs some human supervision (not 100% automated), but it is free and pretty much customisable.
When a page is really long (for example, because of infinite scrolling), it becomes too tedious to scroll back up through screens and screens of content. Hence the role of the Back to Top button. It is not just very trendy, but also very useful and it is not implemented in Moodle by default (at least not yet, Moodle v3.8.2). You can see/use a similar one on this particular page, it is a yellow circle with a white arrow on the right.
Let's see how we can resolve that issue.
Update: it is a core functionality from v3.9, but not as pretty as my solution ;)
To be able to create more complex queries, you have to understand the database in the background. This lesson is very important if you don't really know how databases work or if you are not familiar with the Moodle database at all.
As I said earlier, we are going to find specific forums on our Moodle site, where our teachers, developers, course admins are most probably misusing the 'news' forum feature. Before you continue, please read the previous chapter here.
I would like to give you some idea how to find anomalies within your courses.
To be able to do that, you need access to your database and run some SQL reports. Probably the simplest way is to use the Configurable Reports block. I am not going to teach you how to use that block. I am not going to teach you how to write SQL scripts. But I am going to give you a few examples and the very basics, so if you have a bare minimal SQL knowledge and if you are not afraid to experiment, you will be fine. I am going to give you the SQL code with a brief explanation, so you can modify the code to match your own needs. Obviously I am going to start with a very simple one, don't worry.
Have you ever wanted to know what day of the week is your birthday? If you liked to know you should use a perpetual calendar. When I was child, I used a special table printed on paper, but nowadays we can perfectly do it with a spreadsheet program. There are some advantages and disadvantages to both of them. Maybe the most important is the range of the dates the calendar can work properly. The printed version is up to the authors’ skills. If you wanted to use a spreadsheet software, you are supposed to know the earliest and the latest date allowed for calculation.