(For Admins) การเปลี่ยน Theme สี ของ SharePoint Online (Modern exp.)

Narisorn Limpaswadpaisarn
EchoO365
Published in
4 min readJun 4, 2020

Content difficulty — Technical

วันนี้มาเสนอวิธีการปรับจูนสี Theme ของ SharePoint Online ที่เป็น Modern site ครับ ซึ่ง Modern Site ใน SharePoint Online ตัว framework เรื่องของ User Interface (UI) design ที่เรียกว่า Fluent Design System ซึ่งเป็นมาตรฐานการ design ของ Microsoft เองครับ ซึ่ง framework นี้ก็มี reference แนะนำเพื่อที่จะให้ developer เอาหลักการไปใช้ พัฒนา Application ทั้ง web app, mobile platform ต่างๆ ซึ่งตอนนี้ website ของ Microsoft หรือ Office 365 ที่เป็น Admin Portal ของ Services ต่างๆที่ปรับหน้าตาใหม่ก็มี แบบจำลอง, style หรือ layout ที่ตาม Fluent Design นี้ ซึ่งสามารถไปดูรายละเอียดได้ที่ https://www.microsoft.com/design/fluent/

Microsoft Fluent Design System

สำหรับ SharePoint Online ที่เป็น Modern Site ก็จะมีส่วน ล้อตามพื้นฐานนี้ Fluent Design นี้ (รวมถึง SharePoint Server version ใหม่ด้วย) ซึ่ง Out Of The Box (OOB) ของ SharePoint ก็มี Theme สีซึ่งประกอบด้วย

  • Primary Color
  • Text Color
  • Background Color

แล้วจากสีหลักทั้งสามส่วนก็จะมีไล่โทนสีให้จางลงมา ซึ่งตาม framework ก็จะ มีการปรับ recommend ว่า สีที่ได้เมื่อไปใส่ใน Application แล้วจะไม่มีปัญหาในเรื่องการมองเห็น สามารถเห็ text, ปุ่ม, switch, DropDown หรือ Text Input ที่ชัดเจนไม่คลุมเครือ

ความแตกต่างของ Modern site กับ Classic web part สามารถดูได้ที่ https://support.microsoft.com/en-us/office/sharepoint-classic-and-modern-experiences-5725c103-505d-4a6e-9350-300d3ec7d73f?ui=en-us&rs=en-us&ad=us

การเลือก Color Theme

จากหน้า SharePoint Site ถ้าคลิกที่ Gear Icon -> Change the look -> Theme ก็จะเห็น Template สีเบื้องต้นที่เอามาใช้ได้ใน SharePoint Online หรือเราสามารถ คลิก ที่ Customize เพื่อเลือกสีเบื้องต้นได้

SharePoint Online Modern Theme
ปรับสีและ Accent
เปลี่ยนแล้วสีต่างๆ เช่น สีปุ่มก็เปลี่ยนไป

แต่ถ้าในองค์กรมีสีหรือ branding อยู่แล้วก็จะต้องใช้เรื่องของ customization อย่างแรกเลย คือ การเอาสี Brand หรือ Logo ของบริษัทเรามาหาค่า color code ที่เป็น HEX เสียก่อน ซึ่งก็มี Online website มากมายที่ช่วยเราหาค่าสีได้ เช่น ของ Google Color Picker ซึ่งให้เราหาค่าสีได้ https://htmlcolors.com/google-color-picker

Google color picker
Upload รูปภาพเพื่อหา color code ได้

จากนั้นเราเข้ามาที่ tool ชื่อ Fluent UI Theme Designer เพื่อหา Tone สีของ SharePoint Site เราว่า สีหลักของ Brand เราเข้ากับ accent ไหนบ้าง เพื่อให้ตรงตามมาตฐาน ก็จะมีขึ้นฟ้องว่าชุดสี Primary color, Text color และ Background color ของเราตามมาตรฐานหรือไม่ เพื่อว่าไม่ทำให้เกิดปัญหาเวลามองจาก PC หรือ จอเล็กๆอย่างมือถือ โดยเราเอา Color code ของเรามาเป็นตัวหลัก

ใส่ค่า Color Code เพื่อค้นหาชุดสี
ขึ้นตัวแดงแสดงว่ามีจุดที่อาจจะเป็นปัญหาในส่วนของ accent
ทดลองปรับจูนไปเรื่อยๆ
ขึ้นสีเขียวแสดงว่าไม่มีปัญหา
Accent ของสีที่ไล่มา
เห็นเฉดสีของ Object ต่างๆใน SharePoint ของเรา เช่น ปุ่มต่างๆ

เมื่อได้ชุดที่ต้องการสามารถคลิกปุ่มขวาบนเพื่อ Export Theme เป็น Code, JSON หรือ PowerShell ได้ ซึ่งเราจะ Copy ในส่วนของ PowerShell เก็บไว้

Deploy ไปที่ SharePoint Online

อันดับแรกให้เรา Install ตัว PowerShell Module ของ SharePoint Online ก่อนไปที่ PowerShell แล้วให้ run as administrator

คนที่ run คำสั่งนี้ควรมี role เป็น Global Administrator หรือ SharePoint Administrator บน Office 365

Install-Module -Name Microsoft.Online.SharePoint.PowerShell

Install SPO module

จากนั้น connect ไปที่ SharePoint Online แล้วใส่ site ที่เราต้องการ

Connect-SPOService -Url https://$orgName-admin.sharepoint.com แล้วใส่ชื่อ tenant แทนที $orgName

ตัวอย่าง Tenant name ในนี้คือ m365x129757
ใส่ command เพื่อเข้า SharePoint Online ของ Admin

ตั้ง variable ชื่อ $color = แล้ว paste ค่า array ที่เรา copy มาจาก Fluent UI Theme Designer มาใส่

เอา array ที่ได้จากเฉดสีมาใส่

สุดท้ายใส่ command เพื่อการ deploy ลง Tenant ของเรา โดยตัวอย่างข่างล่างจะตั้งชื่อ Theme ว่า Blue Curacao โดยใส่ค่าตัวแปร array ของเฉดสีไปที่ $color ด้วย

Add-SPOTheme -Identity “Blue Curacao” -palette $color -IsInverted:$false -Overwrite

ค่า -IsInverted:$false จะเป็น dark background ส่วนถ้าเปลี่ยนเป็น -IsInverted:$True จะเป็น light foreground

ใช้ -Name หรือ -Identity ก็ได้ ตามด้วยชื่อ Theme

Deploy ตัวเฉดสีไปที่ Office 365 tenant

เมื่อเรา refresh จอแล้ว คลิกที่ Gear Icon -> Change the look -> Theme ก็จะเห็น Company Theme พร้อมชื่อที่เราตั้งจาก PowerShell เพิ่มขึ้นมา

จะมี custom theme เพิ่มขึ้นมา

คำสั้ง Get-SPOTheme ก็จะ list ตัว custom theme ที่เราสร้างมาทั้งหมด

Get-SPOTheme

ถ้าจะลบ Theme ทำได้โดยคำสั่ง Remove-SPOTheme -Identity “ชื่อ Theme” เช่นในกรณีนี้ คือ Remove-SPOTheme -Identity “Blue Curacao”

--

--

Narisorn Limpaswadpaisarn
EchoO365

Office 365 and Modern Workplaces: Please follow my publication https://medium.com/echoo365 for Microsoft 365 & Power Platform Blog (In Thai)