• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Fixed Soft delete VS hard delete posts - Google AdSense

Moshe1010

Well-known member
#1
It's not a bug, but more of a request because the master of the internet (Google) thinks differently, and it could make some major problems.
When Google AdSense detects that a thread has violated it's policy, it would send an email with a direct link to a thread and ask to remove it in 72 hours. I had these several times with vBulletin, and I just soft deleted them with no problem and Google left me alone.

However, this is not the case with XF. When I soft delete a thread, and a gust (Google bot) would try to visit it, it would get a username/password request (because admins/moderators still have the ability to visit this thread). Google thinks that the thread is still there, but is accessible to users only, and therefore keeps sending notices that this thread is still exists and wasn't removed. Only when I hard-deleted the thread, the issue was resolved.

In vBulletin, when a thread was soft deleted, a user would get a soft 404 ("you don't have sufficient permissions to access this thread/section"), so Google would think the thread is gone.

Thus, I think that a soft 404 would be more appropriate for soft-deleted threads in order to keep Google on track.


Thanks.
 
Last edited:

Mike

XenForo developer
Staff member
#5
That's a really bizarre behavior and I can't really find any documentation on it. Various things seem to indicate that the requests are manually verified so the response code and exact content shouldn't necessarily be an issue if the data has been removed.

However, I will move this to future fix. In terms of "correctness", there's nothing incorrect about telling someone they need to login (which would then tell them they couldn't view it, depending on who they logged in as). Changing this is technically more "wrong" though it's an edge case (telling you it doesn't exist except if you login as a moderator, you can see it).
 

rellek

Well-known member
#6
On the other hand, a (soft) deleted thread or post is actually deleted. So for a bot (or any guest) there is like no chance to get to see the content. Furthermore, I pledge a (soft) deleted thread or post should throw the same message like a hard deleted one for those who have no permission to see it. Because it is deleted.

I mean, Windows doesn't look into the Recycle Bin either but says "mimimi xxx.dll wasn't found" instead. Even if xxx.dll was in the Recycle Bin.

I think this is different to a thread in a private forum (which is not deleted).
 

digitalpoint

Well-known member
#7
Either way, it's an AdSense policy violation to display an ad on an error page of any sort... so regardless if it's a 403 or 404 error, you can't display AdSense on it. Fixing that on your site will indirectly solve the issue that this thread is about.

Side note - you also can't put AdSense ads on registration or login pages.
 

Moshe1010

Well-known member
#8
Either way, it's an AdSense policy violation to display an ad on an error page of any sort... so regardless if it's a 403 or 404 error, you can't display AdSense on it. Fixing that on your site will indirectly solve the issue that this thread is about.

Side note - you also can't put AdSense ads on registration or login pages.
The problem is not adSense position on error/registration page. The problem is that Google sends you a link to a thread that has violated their policy (let's say one of your users posted a cracked software). When you soft-delete this thread, Google still thinks it's there since it generates 403 error (login page) instead of 404.
 

rellek

Well-known member
#9
I heard that too. Once Google complains about a page, they want to find a 404 as their deadline arrives. Doesn't even matter if you remove your ad code from that page.
 

RoldanLT

Well-known member
#10
Either way, it's an AdSense policy violation to display an ad on an error page of any sort... so regardless if it's a 403 or 404 error, you can't display AdSense on it. Fixing that on your site will indirectly solve the issue that this thread is about.

Side note - you also can't put AdSense ads on registration or login pages.
Yes same as your forum.
I restricted adsense on 404 pages, contact form, login, error with login and registration :)
 

Rigel Kentaurus

Well-known member
#11
That's a really bizarre behavior and I can't really find any documentation on it. Various things seem to indicate that the requests are manually verified so the response code and exact content shouldn't necessarily be an issue if the data has been removed.

However, I will move this to future fix. In terms of "correctness", there's nothing incorrect about telling someone they need to login (which would then tell them they couldn't view it, depending on who they logged in as). Changing this is technically more "wrong" though it's an edge case (telling you it doesn't exist except if you login as a moderator, you can see it).
How about soft delete makes a copy (thus changing the thread-id?), that as transparent as we can go with returning a 404 and still keeping the soft deleted thread around.
 

digitalpoint

Well-known member
#12
The problem is not adSense position on error/registration page. The problem is that Google sends you a link to a thread that has violated their policy (let's say one of your users posted a cracked software). When you soft-delete this thread, Google still thinks it's there since it generates 403 error (login page) instead of 404.
Actually, that's not the case... if Google sends you a policy violation and you leave the page up, but remove AdSense from the page, you are fine.
 

digitalpoint

Well-known member
#15
Not sure since I don't insert ads via a template, but I assume you could probably use the {$controllerName} and {$controllerAction} to insert some logic into that template.
 

Moshe1010

Well-known member
#18
Actually, that's not the case... if Google sends you a policy violation and you leave the page up, but remove AdSense from the page, you are fine.
You're not that fine because they state that you may have other links that violate their policy on your website and the link they've sent you is just an example out of many. Good luck trying to find these violating links if you have a medium-big board (which you do). In my case it was just one thread (it's alway just one), and I've always managed to soft-delete it and the issue was resolved, but not this time. I wrote them a letter that I've deleted the thread (after I've hard deleted it), and they've lifted my ban.
 

Brogan

XenForo moderator
Staff member
#19
I use this:

Code:
<xen:if is="!in_array({$contentTemplate}, array('error', 'search_form', 'search_form_post', 'search_form_profile_post', 'search_results', 'register_form', 'login', 'error_with_login'))">
AdSense code here
</xen:if>