วิกิพีเดีย:สคริปต์ผู้ใช้

จากวิกิพีเดีย สารานุกรมเสรี

สคริปต์ผู้ใช้ (user scripts) เป็นโค้ดภาษาจาวาสคริปต์ ที่ใช้ในการตกแต่ง เปลี่ยนแปลง หรือเพิ่มเติมความสามารถ รูปแบบวิกิพีเดียสำหรับผู้ใช้ดังกล่าว โดยปกติจะใส่ในหน้า monobook.js ของผู้ใช้ ซึ่งความสามารถส่วนนี้สำหรับผู้ที่เป็นสมาชิกวิกิพีเดียเท่านั้น.

สารบัญ

[แก้] การใส่สคริปต์ผู้ใช้

โดยให้ใส่โค้ดจาวาสคริปต์ที่ต้องการที่หน้า:

ผู้ใช้:ชื่อผู้ใช้/monobook.js

โดยเปลี่ยนคำว่า "ชื่อผู้ใช้" เป็นชื่อผู้ใช้ของคุณเอง ไปหน้า Monobook.js ของคุณ

[แก้] ตัวอย่างความสามารถเพิ่มเมนูด้านบน

ตัวอย่างความสามารถที่นิยมคือ การเพิ่มเมนูด้านบน เหมือนดังรูปแสดง (หรืออาจจะเพิ่มด้านซ้ายมือ) วิธีใช้โดยการนำฟังก์ชันของจาวาสคริปต์ ไปใส่ไว้ในหน้าผู้ใช้

ตัวอย่างการใช้งานสคริปต์ผู้ใช้
ตัวอย่างการใช้งานสคริปต์ผู้ใช้


[แก้] ตัวอย่างสคริปต์ จากผู้ใช้งานคนอื่น


[แก้] สคริปต์จัดให้

ดูบทความหลักที่สคริปต์ผู้ใช้จัดให้

สคริปต์จัดให้ เป็นรูปแบบสคริปต์ผู้ใช้ที่ผู้ใช้สามารถสมัครใช้สคริปต์ที่จัดมาให้แล้ว โดยเจ้าของสคริปต์สามารถอัปเดตปรับปรุงรุ่นใหม่ได้ โดยผู้สมัครไม่จำเป็นที่จะต้องคัดลอกโค้ดใหม่ เพียงแค่รีเฟรชแคชหน้า monobook.js ของตัวเองก็จะได้รับรุ่นใหม่ ปัจจุบันนี้สคริปต์จัดให้ได้มีแบบรวมเข้าชุดสำหรับหน่วยเก็บกวาดเฉพาะกิจ โดยได้รวมความสามารถหลักไว้ที่เดียว ทำให้สะดวกในการติดตั้งและบริหารจัดการ


[แก้] สคริปต์ ที่นำไปใช้ได้

สคริปต์จะแบ่งเป็น 2 แบบ คือ สคริปต์เครื่องมือ กับสคริปต์เฉพาะทาง โดยการใช้งานของสคริปต์เฉพาะทางอาจ จำเป็น ที่จะต้องใช้ สคริปต์ เครื่องมือตัวใดตัวหนึ่ง ในการช่วยแสดงผล โดยวิธีการนำไปใช้ สามารถเลือกสคริปต์ที่ต้ัองการไปใส่ไว้ในหน้าสคริปต์ ของตัวเองตามความเหมาะสม สำหรับสคริปต์ เครื่องมือ สามารถใส่ครั้งเดียว และสามารถเรียกใช้ได้มากกว่าหนึ่งครั้ง

สำคัญ: ทุกครั้งที่มีการเปลี่ยนแปลงหน้า Monobook.js ของคุณ ให้ทำการ Refresh หน้านั้นหลังจากบันทึกเพื่อเห็นการเปลี่ยนแปลง ขั้นตอนการ Refresh:

  • ใน IE กด Ctrl-F5
  • ใน Mozilla/Safari/Konqueror กด Shift ค้าง แล้วกด Reload (หรือ Ctrl-Shift-R)
  • ใน Opera กด F5

[แก้] สคริปต์เครื่องมือ

[แก้] เพิ่มแท็บด้านบน

/*  */
function addTab(url, name, id, title, key){
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    addlilink(tabs, url, name, id, title, key);
}
/*  */

[แก้] เพิ่มเมนู เครื่องมือ ด้านซ้าย

/*  */
function addlilink(tabs, url, name, id, title, key){
    var na = document.createElement('a');
    na.href = url;
    na.appendChild(document.createTextNode(name));
    var li = document.createElement('li');
    if(id) li.id = id;
    li.appendChild(na);
    tabs.appendChild(li);
    na.accesskey = key;
    var pref = 'alt-';
    if(((clientPC.indexOf('AppleWebKit')!=-1) && (clientPC.indexOf('spoofer')==-1)) || navigator.userAgent.toLowerCase().indexOf( 'mac' ) != -1 ) pref = 'control-';
    if(clientPC.indexOf('opera')!=-1) pref = 'shift-esc-';
    if(key && title) na.title = title + ' [' + pref + key + ']';
    else if(title) na.title = title;
    else if(key) na.title = '[' + pref + key + ']';
    return li;
}
/*  */

[แก้] อ่านชื่อของหน้านั้น

/*  */
function getPname() {
  return wgPageName.replace(/_/g, ' ');
}
/*  */

[แก้] สคริปต์เฉพาะทาง

[แก้] ใส่ข้อความต้องการความช่วยเหลือ

ใส่ข้อความต้องการความช่วยเหลือ ที่ส่วนบนของบทความ และทำการเซฟบทความทันที

/* <nowiki> */
// ========== Quick Wikify ==========
function doQwikify() {
  document.editform.wpTextbox1.value = "{{ช่วยดูหน่อย}}\n\n" + document.editform.wpTextbox1.value;
  document.editform.wpMinoredit=1