جعل روابط المواضيع تصبح مثل ووردبريس - كما نعلم، تتم كتابة الرابط الثابت فى بلوجر افتراضيا الذى يتم تنسيقه هكذا https://rotkx.blogspot.com/2018/07/blog-post.html. ولكن هل يمكننا تغيير تنسيق بيرما لينك الافتراضى الخاص ببلوجر او تغييره ليكون دائما مثل روابط الووردبريس؟ الاجابة : نعم يمكن ذلك.
استيعاب شكل الرابط الثابت
قبل ان اشارككم كيفية تركيب الكود يجب معرفة مفهوم الروابط الثابتة جيدا. هي روابط تستخدم للاشارة الى رابط URL لصفحة ويب مثل الصفحات الثابتة وصفحة المشاركات.
تقوم الشفرة البرمجية التى تحتوي على الجافا سكريبت بتحويل الرابط التالي :
https://rotkx.blogspot.com/2018/07/replace-permalink-become-like-wordpress.html
ليكون الرابط النهائى بهذا الشكل عند التصفح كالتالي :
https://rotkx.blogspot.com/replace-permalink-become-like-wordpress
قم بإضافتها علي مسؤوليتك
جعل روابط المواضيع تصبح مثل ووردبريس
1. اذهب الى لوحة التحكم > القالب > تحرير HTML
2. ابحث عن </body> او </head> وضع الكود التالى فوقه
<script type='text/javascript'>
//<![CDATA[
// BloggerJS v0.3.1
// Copyright (c) 2017-2018 Kenny Cruz
// Licensed under the MIT License
var urlTotal,nextPageToken,postsDatePrefix=!1,accessOnly=!1,useApiV3=!1,apiKey="",blogId="",postsOrPages=["pages","posts"],jsonIndex=1,secondRequest=!0,feedPriority=0,amp="&"[0];function urlVal(){var e=window.location.pathname,t=e.length;return".html"===e.substring(t-5)?0:t>1?1:2}function urlMod(){var e=window.location.pathname;"p"===e.substring(1,2)?(e=(e=e.substring(e.indexOf("/",1)+1)).substr(0,e.indexOf(".html")),history.replaceState(null,null,"../"+e)):(e=(e=postsDatePrefix?e.substring(1):e.substring(e.indexOf("/",7)+1)).substr(0,e.indexOf(".html")),history.replaceState(null,null,"../../"+e))}function urlSearch(e,t){var n=e+".html";t.forEach(function(e){-1!==e.search(n)&&(window.location=e)})}function urlManager(){var e=urlVal();0===e?accessOnly||urlMod():1===e?getJSON(postsOrPages[feedPriority],1):2===e&&(accessOnly||history.replaceState(null,null,"/"))}function getJSON(e,t){var n=document.createElement("script");if(useApiV3){var o="https://www.googleapis.com/blogger/v3/blogs/"+blogId+"/"+e+"?key="+apiKey+"#maxResults=500#fields=nextPageToken%2Citems(url)#callback=bloggerJSON";nextPageToken&&(o+="#pageToken="+nextPageToken),nextPageToken=void 0}else o=window.location.protocol+"//"+window.location.hostname+"/feeds/"+e+"/default?start-index="+t+"#max-results=150#orderby=published#alt=json-in-script#callback=bloggerJSON";o=o.replace(/#/g,amp),n.type="text/javascript",n.src=o,document.getElementsByTagName("head")[0].appendChild(n)}function bloggerJSON(e){var t=[];if(useApiV3||void 0===urlTotal&&(urlTotal=parseInt(e.feed.openSearch$totalResults.$t)),useApiV3){try{e.items.forEach(function(e,n){t.push(e.url)})}catch(e){}nextPageToken=e.nextPageToken}else try{e.feed.entry.forEach(function(n,o){var r=e.feed.entry[o];r.link.forEach(function(e,n){"alternate"===r.link[n].rel&&t.push(r.link[n].href)})})}catch(e){}urlSearch(window.location.pathname,t),urlTotal>150?(jsonIndex+=150,urlTotal-=150,getJSON(postsOrPages[feedPriority],jsonIndex)):nextPageToken?getJSON(postsOrPages[feedPriority]):secondRequest&&(nextPageToken=void 0,urlTotal=void 0,jsonIndex=1,secondRequest=!1,0===feedPriority?(feedPriority=1,getJSON("posts",1)):1===feedPriority&&(feedPriority=0,getJSON("pages",1)))}function bloggerJS(e){e&&(feedPriority=e),urlManager()}bloggerJS();
//]]>
</script>
3. اضغط على حفظ النموذج.
سهل أليس كذلك! تحقق الان من عمل الخاصية، كذلك يمكنك المعاينة بالتفصيل من الازرار بالشريط الجانبى.
تدوينة ممتازة صديقي
ReplyDeleteاستمر :)
شكرا لك عصام
Deleteبالتوفيق ^_^
غير ممكن لأن بلوجر تسمح بالحروف الانجليزية فقط في انشاء رابط مخصص
ReplyDeleteعلي الرحب
ReplyDeleteليس بضرورة بلوجر تلقائيا تضع كلمات التي في عنوان الموضوع في رابط
ReplyDeleteوإذا كان العنوان مكتوب بالعربي هنا يجب تركيبه يدويا شخصيا ذلك الكود غير مهم إلى إذا كان يقوم بترجمة العنوان إلى لغاة مدعومة في رابط
1. ارحب بك واشكرك على تعليقك المميز.
Delete2. بلوجر تضع عنوان الموضوع فى الرابط اذا كان بوجد به أحرف انجليزية، اما اذا كان بـ لغة اخري يكون على هذا النحو "blog-post" وبالطبع يجب التعديل عليه.
3. الكود المذكور بالموضوع هو يقوم بازالة التاريخ "2018/07" و كلمة ".html"، لكن لا يقوم بترجمة الرابط.
هذه الطريقة مسروقة من ارلينا ديزاين
ReplyDeleteيسمي موضوع مترجم بواسطتي وليست طريقة مسروقة
Deleteاخى يسمى ترجم عندما تقوم بتعريب اضافة ما اما فى هذا الموضوع لا توجد اضافات مترجم بل نقل للكود كما هو اخى
Deleteرااااااااااااااااااااااااااااااااااااااائع شكررا شكرا :)
ReplyDeleteهل ينطبق عمل هذا الكود على الصفحات الثابتة فى بلوجر
ReplyDeleteلايمكنني التأكد حاليا، قم بالتجربة وشكرا لمرورك الطيب.
Deleteحلو
ReplyDeleteThis comment has been removed by a blog administrator.
ReplyDeleteتحية طيبة أخي العزيز
ReplyDeleteلدي سؤال خارج إطار موضوع هذه التدوينة وهو أنه وقبل يومين عندما أقوم بالنقر على رابط تدوينة ما في مدونتي فإنه يقوم بالتحديث باستمرار دون استقرار الصفحة.. ما السبب في حدوث ذلك ؟