Difference between revisions of "MediaWiki:Common.js"

From UKTAPS.CO.UK Wiki
Jump to: navigation, search
 
(2 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
$(document).ready(function() {
 
$(document).ready(function() {
    // 这里的 Key 必须与 MediaWiki 内部识别的页面名称完全一致
+
     var rawUrl = $('.canonical-link').data('href');
     var seoMap = {
 
        'Installation_Guide:_Three_Way_Kitchen_Taps': 'https://www.uktaps.co.uk/three-way-kitchen-taps-c-23_28.html'
 
    };
 
 
 
    var currentPage = mw.config.get('wgPageName');
 
 
      
 
      
     // 调试用:如果在浏览器控制台看到这个,说明代码已加载
+
     if (rawUrl) {
    console.log('Current Page Name for Canonical check: ' + currentPage);
+
        // 自动清洗:去掉可能误写的方括号和 Markdown 语法
 +
        var cleanUrl = rawUrl.toString().replace(/[\[\]]/g, '');
 +
       
 +
        // 如果是 Markdown 链接格式,再次清洗
 +
        if (cleanUrl.indexOf('](') > -1) {
 +
            cleanUrl = cleanUrl.split('](')[1].replace(')', '');
 +
        }
  
    if (seoMap[currentPage]) {
+
        $('link[rel="canonical"]').remove();
 +
       
 
         var link = document.createElement('link');
 
         var link = document.createElement('link');
 
         link.setAttribute('rel', 'canonical');
 
         link.setAttribute('rel', 'canonical');
         link.setAttribute('href', seoMap[currentPage]);
+
         link.setAttribute('href', cleanUrl);
 
         document.head.appendChild(link);
 
         document.head.appendChild(link);
         console.log('SEO: Canonical tag successfully injected!');
+
       
 +
         console.log('SEO: Canonical successfully cleaned and linked to: ' + cleanUrl);
 
     }
 
     }
 
});
 
});

Latest revision as of 13:54, 15 June 2026

/* Any JavaScript here will be loaded for all users on every page load. */

$(document).ready(function() {
    var rawUrl = $('.canonical-link').data('href');
    
    if (rawUrl) {
        // 自动清洗:去掉可能误写的方括号和 Markdown 语法
        var cleanUrl = rawUrl.toString().replace(/[\[\]]/g, '');
        
        // 如果是 Markdown 链接格式,再次清洗
        if (cleanUrl.indexOf('](') > -1) {
            cleanUrl = cleanUrl.split('](')[1].replace(')', '');
        }

        $('link[rel="canonical"]').remove();
        
        var link = document.createElement('link');
        link.setAttribute('rel', 'canonical');
        link.setAttribute('href', cleanUrl);
        document.head.appendChild(link);
        
        console.log('SEO: Canonical successfully cleaned and linked to: ' + cleanUrl);
    }
});