របៀបធ្វើ Safelink Redirect សម្រាប់ Blogger ងាយៗ

សិក្សាវិធីបង្កើត Safelink Redirect សម្រាប់ Blogger យ៉ាងងាយស្រួល ដើម្បីការពារតំណភ្ជាប់ និងបង្កើនចំណូលពីការផ្សព្វផ្សាយ។ មេរៀនលម្អិត អាចអនុវត្តបានភ្លាមៗ។
Learn how to easily create a Safelink redirect for Blogger to protect external links and boost your earnings. Step-by-step guide, simple and effective.

របៀបបង្កើតទំព័រ Redirect Link (Safelink) ដ៏មានប្រសិទ្ធភាពបំផុតសម្រាប់ Blogger

ការបង្កើតទំព័រផ្ទេរលីងទៅខាងក្រៅ ឬដែលយើងហៅថា Safelink គឺជាទំព័រមួយដែលជួយត្រួតពិនិត្យសុវត្ថិភាពលីង (URL) មុនពេលអ្នកប្រើប្រាស់ទៅដល់គោលដៅ ដើម្បីប្រាកដថាវាមិនមានផ្ទុកមេរោគ ឬ Malware ផ្សេងៗ។

ក្នុងអត្ថបទនេះ ខ្ញុំនឹងណែនាំបងប្អូនពីរបៀបបង្កើតទំព័រ Safelink នៅលើប្លុករបស់បងប្អូនតាមរបៀបដែលត្រឹមត្រូវបំផុត និងគ្មានកំហុសបច្ចេកទេស (Error) ដូចដែលធ្លាប់ជួបប្រទះពីមុនមក។

មគ្គុទ្ទេសក៍បង្កើត Safelink សម្រាប់ Blogger

ជំហានទី ១៖ បង្កើតទំព័រ Safelink Page

  • ដំបូង សូមចូលទៅកាន់ Blogger Dashboard របស់អ្នក។
  • ចូលទៅកាន់ផ្នែក Pages (ទំព័រ) រួចចុចយក New Page (ទំព័រថ្មី)
  • ប្តូរការសរសេរទៅជាផ្នែក HTML View រួចចម្លងកូដខាងក្រោមនេះយកទៅដាក់៖
---

បងប្អូនគ្រាន់តែចម្លងកូដខាងក្រោមនេះ រួចយកទៅដាក់ក្នុងទំព័រ (Page) ដែលបានបង្កើតក្នុងជំហានទី ១៖

Safelink-Page-Code.html
<style>#header-blog { display: none; } #sidebar-wrapper {display: none;} #main-wrapper {width: 100%;background: #fff;} #footer-wrapper {display: none;}</style> 
<div class="ad-placement"> 
  <!--[ Your_ad_code_here ]--> 
  <a class="ads-here" href="/">Responsive Advertisement</a> 
</div> 
<div class="safelink-button" id="safelink"> 
  <div style="text-align: center;"> 
    <div class="button outline" id="safelink-wait">Please wait...</div> 
    <script>/*<![CDATA[*/ var currentURL = location.href; var str = currentURL; var res = str.replace(' https://www.anhtrainang.com/p/redirect.html ' + '?url=', " "); function changeLink(){ var decodedString = Base64.decode(res); window.open(decodedString, '_blank')}; document.write('<a href="#getLink" id="safelink-download" class="button">Click here to continue</a>'); var linkDL = document.getElementById("safelink-download"); var notif = document.getElementById("safelink-wait"); var time = 15; var textTime = document.createElement("span"); linkDL.parentNode.replaceChild(textTime, linkDL); var id; id = setInterval(function () { time--; if (time < 0) { textTime.parentNode.replaceChild(linkDL, textTime); clearInterval(id); notif.style.display = "none"; linkDL.style.display = "inline-block"; } else { textTime.innerHTML = "Link will appear in " + time.toString() + " seconds"; }}, 1000); /*]]>*/</script> 
  </div> 
</div> 
<div class="safelink-content"> 
<p>Blogger is a free service for communication, self-expression, and freedom of speech... (អត្ថបទវែងដែលបងបានផ្ដល់ឱ្យ)</p>
</div> 
<div class="safelink-create" style="text-align: center;"> 
  <div class="ad-placement"> 
    <!--[ Your_ad_code_here ]--> 
    <a class="ads-here" href="/">Responsive Advertisement</a> 
  </div> 
  <div id="getLink"> 
    <a class="button" href="javascript:;" onclick="changeLink();" rel="noreferrer noopener">Continue</a> 
  </div> 
  <div class="ad-placement"> 
    <!--[ Your_ad_code_here ]--> 
    <a class="ads-here" href="/">Responsive Advertisement</a> 
  </div> 
</div>

⚠️ សម្គាល់៖

  • បងប្អូនត្រូវប្តូរលីង https://www.anhtrainang.com/p/redirect.html ទៅជាលីងទំព័រ Safelink ផ្ទាល់ខ្លួនរបស់បងប្អូនវិញ។
  • អាចដាក់កូដពាណិជ្ជកម្ម (Adsense) ក្នុងកន្លែង Your_ad_code_here ដើម្បីបង្កើនចំណូល។
---

⚠️ ចំណុចត្រូវចងចាំ (Note):

សូមកុំភ្លេចប្តូរលីងដែលបានបញ្ជាក់ក្នុងកូដខាងលើ (ជំហានទី ២) ទៅជាលីងទំព័រ Safelink ដែលបងប្អូនទើបតែបង្កើតអម្បាញ់មិញ។ បងប្អូនអាចដាក់ឈ្មោះវាថា redirect ឬឈ្មោះអ្វីក៏បានតាមចិត្ត។

ជំហានទី ២៖ បន្ថែម CSS, Javascript និងដោះស្រាយបញ្ហា ?m=1

ដើម្បីឱ្យប៊ូតុង និងទម្រង់ Safelink ដំណើរការបានស្អាត បងប្អូនត្រូវយកកូដ CSS ខាងក្រោមនេះ ទៅផាស (Paste) នៅពីលើ Tag </b:skin> នៅក្នុងផ្នែក Theme > Edit HTML

Custom-Safelink-CSS
/* Safelink CSS Styles */
.safelink-button { text-align: center; margin: 20px 0; }
.button { background-color: #3498db; color: white; padding: 12px 24px; border-radius: 5px; text-decoration: none; font-weight: bold; display: inline-block; cursor: pointer; border: none; transition: 0.3s; }
.button:hover { background-color: #2980b9; box-shadow: 0 4px 12px rgba(0,0,0,0.2); }
.button.outline { background: transparent; border: 2px solid #3498db; color: #3498db; }
#safelink-wait { font-size: 18px; color: #e67e22; font-weight: bold; padding: 10px; }
.ad-placement { margin: 20px 0; text-align: center; background: #f9f9f9; padding: 10px; border: 1px dashed #ddd; }
.safelink-content { margin-top: 30px; font-size: 16px; color: #555; line-height: 1.8; }
---

បន្តមកទៀត នេះគឺជាកូដ CSS បន្ថែមសម្រាប់កំណត់រូបរាងប៊ូតុង និងពណ៌នៃទំព័រ Safelink របស់បងប្អូន (បងប្អូនអាចកែប្រែពណ៌ត្រង់ផ្នែក :root តាមចំណង់ចំណូលចិត្ត)៖

Safelink-Style-Design.css
/* Safelink Stylesheet */ 
:root {
  --link-outline-color: #48525c;
  --link-bg-color: #204ecf;
} 

.button {
  display: inline-flex;
  align-items: center;
  margin: 15px 15px;
  padding: 10px 20px;
  outline: 0;
  border: 0;
  border-radius: 2px;
  color: #fefefe;
  background-color: var(--link-bg-color);
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  max-width: 100%;
  line-height: 2em;
} 

.button.outline {
  color: var(--link-outline-color);
  background-color: transparent;
  border: 1px solid #ebeced;
} 

.button.outline:hover {
  border-color: var(--link-bg-color);
} 

.safelink-button, .safelink-create > * {
  margin: 1.8em 0;
} 

.safelink-button span {
  display: block;
  font-size: 12px;
} 

#getLink {
  margin: 5px 0;
} 

#getLink .button {
  display: none;
} 

#getLink:target .button {
  display: inline-flex;
}
----

ជំហានបន្តបន្ទាប់ទៀតនេះ គឺការប្រើប្រាស់កូដ JavaScript ដើម្បីលុបកន្ទុយ ?m=1 ចេញពីលីងប្លុករបស់បងប្អូន។ សូមចម្លងកូដខាងក្រោមនេះ ទៅផាស (Paste) នៅពីលើ Tag </head> ក្នុងផ្នែក Edit HTML

Remove-M1-Script.js
<script>
/* JavaScript to Remove ?m=1 from URL */
var uri = window.location.toString();
if (uri.indexOf("?m=1", "?m=1") > 0) {
  var clean_uri = uri.substring(0, uri.indexOf("?m=1"));
  window.history.replaceState({}, document.title, clean_uri);
}
</script>

*ការលុប ?m=1 ជួយឱ្យលីងប្លុករបស់បងប្អូនមើលទៅមានសណ្តាប់ធ្នាប់ និងមានជំនឿចិត្តខ្ពស់ពីអ្នកចុចអាន។

----

ជំហានទី ៣៖ បន្ថែម JavaScript សម្រាប់ប្តូរលីងអូតូ និងការការពារលីង (Encoding)

នេះគឺជាជំហានបង្ហើយ! សូមចម្លងកូដ JavaScript ដ៏មានឥទ្ធិពលខាងក្រោមនេះ ទៅផាស (Paste) នៅពីលើ Tag </body> ក្នុង Theme របស់បងប្អូន។ កូដនេះនឹងជួយប្តូររាល់លីងដែលចេញទៅខាងក្រៅ ឱ្យឆ្លងកាត់ទំព័រ Safelink ដែលយើងបានបង្កើត៖

Auto-Safelink-Redirect.js
<b:if cond='data:view.isSingleItem'> 
    <script> 
        /*<![CDATA[*/ 
        var Base64 = { _keyStr: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", encode: function(input) { var output = ""; var chr1, chr2, chr3, enc1, enc2, enc3, enc4; var i = 0; input = Base64._utf8_encode(input); while (i < input.length) { chr1 = input.charCodeAt(i++); chr2 = input.charCodeAt(i++); chr3 = input.charCodeAt(i++); enc1 = chr1 >> 2; enc2 = ((chr1 & 3) << 4) | (chr2 >> 4); enc3 = ((chr2 & 15) << 2) | (chr3 >> 6); enc4 = chr3 & 63; if (isNaN(chr2)) { enc3 = enc4 = 64; } else if (isNaN(chr3)) { enc4 = 64; } output = output + this._keyStr.charAt(enc1) + this._keyStr.charAt(enc2) + this._keyStr.charAt(enc3) + this._keyStr.charAt(enc4); } return output; }, decode:function(input) { var output = ""; var chr1, chr2, chr3; var enc1, enc2, enc3, enc4; var i = 0; input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); while (i < input.length) { enc1 = this._keyStr.indexOf(input.charAt(i++)); enc2 = this._keyStr.indexOf(input.charAt(i++)); enc3 = this._keyStr.indexOf(input.charAt(i++)); enc4 = this._keyStr.indexOf(input.charAt(i++)); chr1 = (enc1 << 2) | (enc2 >> 4); chr2 = ((enc2 & 15) << 4) | (enc3 >> 2); chr3 = ((enc3 & 3) << 6) | enc4; output = output + String.fromCharCode(chr1); if (enc3 != 64) { output = output + String.fromCharCode(chr2); } if (enc4 != 64) { output = output + String.fromCharCode(chr3); } } output = Base64._utf8_decode(output); return output; }, _utf8_encode:function(string) { string = string.replace(/\r\n/g, "\n"); var utftext = ""; for (var n = 0; n < string.length; n++) { var c = string.charCodeAt(n); if (c < 128) { utftext += String.fromCharCode(c); } else if ((c > 127) && (c < 2048)) { utftext += String.fromCharCode((c >> 6) | 192); utftext += String.fromCharCode((c & 63) | 128); } else { utftext += String.fromCharCode((c >> 12) | 224); utftext += String.fromCharCode(((c >> 6) & 63) | 128); utftext += String.fromCharCode((c & 63) | 128); } } return utftext; }, _utf8_decode:function(utftext) { var string = ""; var i = 0; var c = c1 = c2 = 0; while (i < utftext.length) { c = utftext.charCodeAt(i); if (c < 128) { string += String.fromCharCode(c); i++; } else if ((c > 191) && (c < 224)) { c2 = utftext.charCodeAt(i + 1); string += String.fromCharCode(((c & 31) << 6) | (c2 & 63)); i += 2; } else { c2 = utftext.charCodeAt(i + 1); c3 = utftext.charCodeAt(i + 2); string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)); i += 3; } } return string; } }; 
        var protected_links = "facebook.com,instagram.com,twitter.com,youtube.com"; 
        var a_to_va = 0; var a_to_vb = 0; var a_to_vc = ""; 
        function auto_safelink() { auto_safeconvert(); }; 
        function auto_safeconvert() { 
            var a_to_vd = window.location.hostname; 
            if (protected_links != "" && !protected_links.match(a_to_vd)) { protected_links += "," + a_to_vd; } else if (protected_links == "") { protected_links = a_to_vd; } 
            var a_to_ve = ""; var a_to_vf = new Array(); var a_to_vg = 0; 
            a_to_ve = document.getElementsByTagName("a"); a_to_va = a_to_ve.length; a_to_vf = a_to_fa(); a_to_vg = a_to_vf.length; 
            var a_to_vh = false; var j = 0; 
            var daftarPostingan = [" https://www.anhtrainang.com/p/redirect.html "]; 
            var randomPostingan = daftarPostingan[Math.floor(Math.random() * daftarPostingan.length)]; 
            var a_to_vi = ""; 
            for (var i = 0; i < a_to_va; i++) { 
                a_to_vh = false; j = 0; 
                while (a_to_vh == false && j < a_to_vg) { 
                    a_to_vi = a_to_ve[i].href; 
                    if (a_to_vi.match(a_to_vf[j]) || !a_to_vi || !a_to_vi.match("http")) { a_to_vh = true; } 
                    j++; 
                } 
                if (a_to_vh == false) { 
                    var encryptedUrl = Base64.encode(a_to_vi); 
                    a_to_ve[i].href = randomPostingan + "?url=" + encryptedUrl; 
                    a_to_ve[i].rel = "noopener noreferrer"; a_to_vb++; 
                } 
            } 
        }; 
        function a_to_fa() { var a_to_vf = new Array(); protected_links = protected_links.replaceAll(" ", ""); a_to_vf = protected_links.split(","); return a_to_vf; };  
        auto_safelink();
    /*]]>*/ 
    </script> 
</b:if>

💡 តិចនិកក្នុងការកំណត់បន្ថែម៖

  • ប្តូរលីងផ្ទាល់ខ្លួន៖ សូមប្តូរលីង https://www.anhtrainang.com/p/redirect.html ទៅជាលីងទំព័រដែលបងប្អូនបានបង្កើតក្នុងជំហានទី ១។
  • ការពារលីង៖ បងប្អូនអាចបន្ថែមឈ្មោះគេហទំព័រដែលមិនចង់ឱ្យឆ្លងកាត់ Safelink (ដូចជា Facebook, Instagram) នៅក្នុងផ្នែក protected_links ដោយគ្រាន់តែប្រើសញ្ញាក្បៀស ( , ) ផ្ដាច់ពីគ្នា។

សេចក្តីសន្និដ្ឋាន

ខាងលើនេះគឺជាវិធីសាស្ត្រស្តង់ដារបំផុតក្នុងការបង្កើតទំព័រ Redirect Link សម្រាប់ Blogspot។ វិធីនេះខ្ញុំបានប្រើប្រាស់ដោយជោគជ័យ និងមានប្រសិទ្ធភាពខ្ពស់បំផុត។ ប្រសិនបើបងប្អូនមានចម្ងល់ ឬជួបការលំបាកត្រង់ចំណុចណាមួយ សូមបញ្ចេញមតិ (Comment) នៅខាងក្រោម ខ្ញុំនឹងរីករាយក្នុងការជួយបងប្អូន!

សូមជូនពរបងប្អូនទទួលបានជោគជ័យ! 🚀

Post a Comment