DANFA

Запрет отображения AdSense на определенных страницах сайта

На сколько строг AdSense рассказывать не надо, все издатели знают, что за нарушение можно отхватить бан на веки вечные. AdSense может влепить нарушение за размещение рекламы на странице, где есть стоп слово...

На моем сайте AdSense крутится только в тех разделах, где нет нарушений правил. Однако, в одном таком разделе появилась тема, где полным полно стоп слов. Я бы не хотел быть наказанным за одну страницу, но и тему я не хочу удалять. Я подумал, что можно на такой странице просто не показывать рекламу, вот и все, а поможет мне в этом PHP!

И так, у меня получилась небольшая функция "forbiddenPages":
	private function forbiddenPages()
	{
		$req2 = $this->request()->get('req2');

		if ($req2 == 'thread')
		{
			if (in_array($this->request()->get('req3'), array('1582')))
			{
				return false;
			}
		}

		return true;
	}

Здесь все очень просто: проверяем второй параметр URL, если он равен thread, то получаем третий параметр и проверяем, есть ли совпадение в массиве запрещенных страниц. Если есть, возвращаем false, если нету, функция вернет true. Остается только вызвать данную функцию, что я и делаю перед получением кода рекламы, вот так:
		if (!$this->forbiddenPages())
		{
			return false;
		}

Если запрещенных тем будет много, то и массив запрещенных страниц будет большим, а за большим массивом следить будет не легко, так как какие то темы могут быть удалены, отредактированы или перенесены в другой раздел... Чтобы не пришлось постоянно отслеживать запрещенные страницы, можно в таблицу записей, в моем случае это таблица тем форума, добавить новое поле, которое будет отвечать за вывод рекламы, можно выводить или нет. При создании или редактировании темы, ставим галочку, мол рекламу показывать нельзя и реклама в теме не отображается. Добавление нового поля в таблицу избавит от ручного редактирования массива запрещенных страниц. Возможно, что скоро я сделаю именно так.