مرحبًا أيها المدونون! الكثير منا تعرض لتقييد اعلانات بسبب النقرات الغير شرعية اليوم سوف اقدم لكم احدث سكربت لتخلص من هذه المشكلة التي ارقت الكثير من المدونين
إذا كان لديك موقع معتمد من Adsense، فربما واجهت مشكلات تقييد الإعلانات بسبب النقرات غير الصالحة. قد يقوم Adsense بتقييد عرض الإعلانات على موقعك لفترة محدودة. إذا كنت تريد التحكم في النقرات التي يقوم بها زوار موقعك على Adsense، فيجب عليك تجربة الأكواد التي سأشاركها اليوم.
كيف يعمل كود حماية الموقع من النقرات الغير صالحة؟
في الأساس، سنقوم بتعيين ملفات تعريف الارتباط في متصفح الزوار بقيمة تعتمد على عدد المرات التي قاموا فيها بالنقر فوق الإعلانات. دعونا نفهم مع مثال.
لنفترض أنك قمت بتعيين الحد الأقصى لثلاث نقرات. عندما ينقر على الإعلانات، سيتم تعيين ملف تعريف ارتباط بالمفتاح المطلوب (على سبيل المثال "MAX_CLICKS") بقيمة تعتمد على النقرات في متصفحاته، وستزيد القيمة بمقدار 1 بعد كل نقرة. لذلك، عندما يصلون إلى الحد الأقصى (أي 3 مرات) وينقرون مرة أخرى على الإعلانات، ستختفي الإعلانات. الآن، لن يشاهدوا أي إعلانات لفترة من الوقت، حسب ما تحدده.
سيظل مسح ملفات تعريف الارتباط يسمح للمستخدمين بالنقر على الإعلانات. لذلك، لن يمنع ذلك تمامًا من النقرات المزعجة ولكنه سيساعدك على التحكم في النقرات.
ابدء تركيب الكود على قالب بلوجر الخاص بك:
مهم!قبل أن نبدأ بإضافة الأكواد في XML، سأوصيك بأخذ نسخة احتياطية لموضوعك الحالي. عن طريق الصدفة في حالة حدوث أي مشكلة، يمكنك استعادتها لاحقًا.
الخطوة 1: أولا قم بتسجيل الدخول إلى حسابكBlogger Dashboard.
الخطوة 2: في لوحة تحكم Blogger، انقر فوق السمة.
الخطوة 3: انقر على أيقونة السهم لأسفل بجوار زر "تخصيص".
الخطوة 4: انقر فوق تحرير HTML، وسيتم إعادة توجيهك إلى صفحة التحرير.
الخطوة 5: الآن ابحث عن الكود </head> والصق رموز JavaScript التالية فوقه مباشرة.
<script>
const Cookie = {
get: (e) => { e = document.cookie.match(new RegExp("(?:^|; )" + e.replace(/([.$?*|{}()[\]\\/+^])/g, "$1") + "=([^;]*)")); return e ? decodeURIComponent(e[1]) : void 0 },
set: (e, n, o = {}) => { o = { path: "/", ...o }, o.expires instanceof Date && (o.expires = o.expires.toUTCString()); let c = unescape(encodeURIComponent(e)) + "=" + unescape(encodeURIComponent(n)); for (var t in o) { c += "; " + t; var a = o[t]; !0 !== a && (c += "=" + a) } document.cookie = c },
rem: (e) => { Cookie.set(e, "", { "max-age": -1 }) }
}
const antiBombSet = {
timeOut: 3600,
maxClick: 3,
cookieKey: "MAX_CLICKED",
adsSelectors: "ins.adsbygoogle",
iframeSelectors: "ins.adsbygoogle iframe",
callback: () => {
if (antiBombSet.executed === undefined) {
antiBombSet.executed = !0;
if (document.getElementById("mxAds_stl") == null) {
var stl = document.createElement("style");
stl.id = "mxAds_stl";
stl.innerHTML = (antiBombSet.adsSelectors || ".adsbygoogle") + "{pointer-events:none}";
document.head.appendChild(stl);
}
}
}
};
if (Cookie.get(antiBombSet.cookieKey || "ADS_CLICK") != undefined && parseInt(Cookie.get(antiBombSet.cookieKey || "ADS_CLICK")) >= (antiBombSet.maxClick || 3)) {
antiBombSet.callback()
};
</script>
الخطوة 6: ابحث عن الكود </body> والصق رموز JavaScript التالية فوقه مباشرةً.JavaScript
<script>
! function () {
function n(e, o) {
return null != (e = Cookie.get(e)) && parseInt(e) >= o
}
var l = antiBombSet.cookieKey || "ADS_CLICK",
e = antiBombSet.adsSelectors || ".adsbygoogle",
i = antiBombSet.timeOut || 7200,
c = antiBombSet.maxClick || 3;
0 < document.querySelectorAll(e).length && document.querySelectorAll(e).forEach(e => {
e.addEventListener("click", function () {
var e, o;
n(l, c) ? antiBombSet.callback() : (e = l, null != (o = Cookie.get(e)) ? (o = parseInt(o) + 1, Cookie.set(e, o.toString(), {
secure: !0,
"max-age": i
})) : Cookie.set(e, "1", {
secure: !0,
"max-age": i
}))
})
}), window.addEventListener("blur", function () {
n(l, c) && antiBombSet.callback();
for (var e, o, t = document.querySelectorAll(antiBombSet.iframeSelectors || ".adsbygoogle iframe"), a = 0; a < t.length; a++) document.activeElement == t[a] && (n(l, c) ? antiBombSet.callback() : (e = l, null != (o = Cookie.get(e)) ? (o = parseInt(o) + 1, Cookie.set(e, o.toString(), {
secure: !0,
"max-age": i
})) : Cookie.set(e, "1", {
secure: !0,
"max-age": i
})))
})
}();
</script>