88
หลักสูตร 1 วัน การสร้างเว็บไซต์ด้วย Joomla! CMS

Joomla 3.7 Workshop 1 Day

Embed Size (px)

Citation preview

Page 1: Joomla 3.7 Workshop 1 Day

หลักสูตร 1 วัน

การสร้างเว็บไซต์ด้วย Joomla! CMS

Page 2: Joomla 3.7 Workshop 1 Day

about us

อัครวุฒิ ตำราเรียง Akarawuth Tamrareang

(JoomlaCorner) [email protected]

twitter: @joomlacornerwww.marvelic.co.th www.akarawuth.com

Tel : 02 235 7629 , 02 077 8366

- อุปนายกสมาคมศึกษาและพัฒนาโอเพ่นซอร์ส OSEDA.or.th

- Joomla! Bug Squad : joomla.org- Founder JoomlaCorner.com - กรรมการผู้จัดการ Marvelic Engine Co.,Ltd. www.marvelic.co.th - กรรมการควบคุมจริยธรรม สมาคมผู้ดูแลเว็บไทย - ผู้อำนวยการฝ่ายเทคโนโลยีสารสนเทศ สมาคมอาสาสมัครบรรเทาสาธารณภัยแห่งประเทศไทย - ที่ปรึกษาสมาคมการดับเพลิงและช่วยชีวิต - อดีตกรรมการบริหาร OpenSource Matters Inc.(Joomla Project)

Page 3: Joomla 3.7 Workshop 1 Day

about us

ศุภชัย แต่สกุลSupachai Teasakul

[email protected] twitter: @supa_chai www.marvelic.co.th

Tel : 02 235 7629 , 02 077 8366

- Senior Project Manager Marvelic Engine Co.,Ltd. : marvelic.co.th

- Joomla! Translation WG : joomla.org - LaiThai Developer Team : JoomlaCorner.com - นายทะเบียน สมาคมศึกษาและพัฒนาโอเพ่นซอร์ส OSEDA.or.th

- อดีตอาจารย์พิเศษ หลักสูตรจูมล่า มหาวิทยาลัยศรีปทุม

Page 4: Joomla 3.7 Workshop 1 Day

Session 1

ทำความเข้าใจกับ Joomla!

Page 5: Joomla 3.7 Workshop 1 Day

The Joomla CMS provides a robust content management system for you to develop your dynamic websites.

What is Joomla? : https://www.joomla.org/about-joomla.html

Page 6: Joomla 3.7 Workshop 1 Day

Source : https://youtu.be/Qjnc0H8utks

Page 7: Joomla 3.7 Workshop 1 Day

Happy 10th Birthday Joomla! Source : https://youtu.be/HMRM7CTnFAA

Page 8: Joomla 3.7 Workshop 1 Day

Core Features : https://www.joomla.org/core-features.html Joomla! 3.X - Latest Features : https://www.joomla.org/3/

ความสามารถหลักของ Joomla!

• Multilingual • Well Supported • Easy Upgrades • Integrated Help System • Media Manager • Banner Management • Contact Management • Search better, Search Smarter • Content Management • Nested categorization • Tagging • Frontend Editing • Content Versioning • Syndication and Newsfeed

Management

Page 9: Joomla 3.7 Workshop 1 Day

Source : https://docs.joomla.org/Joomla!_CMS_versions

Page 10: Joomla 3.7 Workshop 1 Day

The Joomla Framework provides a set of files which can be used to create both web and command line applications.

The Joomla CMS provides a robust content management system for you to develop your dynamic websites.

Joomla! Developer Network : https://developer.joomla.org/

Page 11: Joomla 3.7 Workshop 1 Day

ตัวอย่างเว็บที่ใช้

Page 12: Joomla 3.7 Workshop 1 Day

มูลนิธิแม่ฟ้าหลวง ในพระบรมราชูปถัมภ์

Page 13: Joomla 3.7 Workshop 1 Day

บริษัท เกลือพิมาย จำกัด

Page 14: Joomla 3.7 Workshop 1 Day

Star Petroleum Refining Public Company Limited. (Intranet)

Page 15: Joomla 3.7 Workshop 1 Day

udomfurniture.co.th

Page 16: Joomla 3.7 Workshop 1 Day

roddeeded.com

Page 17: Joomla 3.7 Workshop 1 Day

scancorp.co.th

Page 18: Joomla 3.7 Workshop 1 Day

marvelic.co.th

Page 19: Joomla 3.7 Workshop 1 Day

SMESmartWeb.com

Page 20: Joomla 3.7 Workshop 1 Day

ระบบจัดฝึกอบรม Softwarepark

Page 21: Joomla 3.7 Workshop 1 Day

Session 2

การเตรียมความพร้อมก่อนการติดตั้ง Joomla!

Page 22: Joomla 3.7 Workshop 1 Day

• PHP 5.3.1 จำเป็นสำหรับรุ่น 3.0 ถึง 3.2 โดยที่ 3.3 จะเพิ่มความต้องการขั้นต่ำเป็น PHP 5.3.10 Joomla! รุ่น 3.5 และรุ่นใหม่กว่าก็เข้ากันได้กับ PHP 7

• ดูข้อมูลเพิ่มเติมได้ที่ : https://downloads.joomla.org/technical-requirements

Page 23: Joomla 3.7 Workshop 1 Day

• XAMPP หรือ Software ที่ใช้จำลองเป็น WebServer เว็บไซต์ : https://www.apachefriends.org

• FileZilla Client โปรแกรม FTP Client ใช้ในการ Transfer ข้อมูลขึ้น Hostingเว็บไซต์ : https://filezilla-project.org

• 7-Zip โปรแกรมใช้สำหรับแตกไฟล์/บีบอัดไฟล์ ใช้แทน WinZip, WinRAR เว็บไซต์ : http://www.7-zip.org

• NotePad++ Text Editor สำหรับใช้แก้ไข Code เว็บไซต์ : http://notepad-plus-plus.org

• XMind ใช้ในการวางแผนโครงสร้างเว็บไซต์ เว็บไซต์ : http://www.xmind.net

Open source tools เบื้องต้นสำหรับใช้งาน

Page 24: Joomla 3.7 Workshop 1 Day

จำลองเครื่องเป็น WebServer / ติดตั้ง XAMPP

Page 25: Joomla 3.7 Workshop 1 Day

http://localhost or http://127.0.0.1 ให้นำเว็บไซต์ไปไว้ภายใต้ Directory นี้drive:\xampp\htdocs

การติดตั้ง XAMPP

Page 26: Joomla 3.7 Workshop 1 Day

Session 3

เรียนรู้การนำ Joomla! ขึ้น Server

Page 27: Joomla 3.7 Workshop 1 Day

การ upload Joomla! ขึ้นบน Hosting ด้วยโปรแกรม FTP

• Using WinSCP http://winscp.net

• Using FileZilla http://filezilla-project.org

Page 28: Joomla 3.7 Workshop 1 Day

ใน xampp ใช้ host: 127.0.0.1user : newuser pw : wampp

ตัวอย่างการใช้งาน FileZilla FTP

Page 29: Joomla 3.7 Workshop 1 Day

Using FileZilla

ฝั่งผู้ใช้

ฝั่ง Hosting

ตัวอย่างการใช้งาน FileZilla FTP

Page 30: Joomla 3.7 Workshop 1 Day

Change File Permission (chmod)

ตัวอย่างการใช้งาน FileZilla FTP

Page 31: Joomla 3.7 Workshop 1 Day

Session 4

การติดตั้ง Joomla! 3.x และการติดตั้ง Tool ในการสร้างเว็บ

Page 32: Joomla 3.7 Workshop 1 Day

ขั้นตอนการสร้างเว็บไซต์ด้วย Joomla!

1. เตรียม SiteMap ของเว็บไซต์ เมนูต่างๆ รวมถึงข้อมูลที่จะมีบนเว็บไซต์ 2. ทำการดาวน์โหลด Joomla! เวอร์ชั่นที่ต้องการจากเว็บไซต์ joomla.org 3. แตกไฟล์ Joomla! Package ที่ดาวน์โหลดมา แล้วทำการ Transfer files ทั้งหมด

ขึ้นไปไว้ใน Hosting ที่ได้เตรียมไว้ด้วยโปรแกรม FTP 4. ทำการติดตั้ง Joomla! โดยพิมพ์ URL ของเว็บที่ได้นำไฟล์ Joomla! ขึ้นไปไว้

เช่น http://yourdomain.com หรือหากจำลองไว้ในเครื่องก็เป็น http://localhost/youFolderName

5. ตั้งค่า TimeZone ใน Global Configuration 6. จัด Group แบ่งประเภทของเนื้อหา , ใส่เนื้อหาตาม SiteMap ที่วางเอาไว้ 7. สร้างเมนู , สร้างโมดูล ที่ต้องการแสดงผลบนหน้าเว็บ 8. ติดตั้ง Extensions (Template, Modules, Plugins) ที่ต้องการตามความจำเป็น 9. ตั้งค่าปรับแต่งเว็บไซต์ เปิดโมดูล ในตำแหน่งที่ต้องการ หรือตามตำแหน่งที่ได้ออกแบบไว้

Page 33: Joomla 3.7 Workshop 1 Day
Page 34: Joomla 3.7 Workshop 1 Day
Page 35: Joomla 3.7 Workshop 1 Day
Page 36: Joomla 3.7 Workshop 1 Day
Page 37: Joomla 3.7 Workshop 1 Day
Page 38: Joomla 3.7 Workshop 1 Day
Page 39: Joomla 3.7 Workshop 1 Day
Page 40: Joomla 3.7 Workshop 1 Day

http://yourwebsite.com/administrator

ส่วนของผู้บริหารเว็บไซต์

Page 41: Joomla 3.7 Workshop 1 Day
Page 42: Joomla 3.7 Workshop 1 Day

Tools bar icons

Page 43: Joomla 3.7 Workshop 1 Day

Session 5

การตั้งค่าทั่วไปของเว็บไซต์ (Global Configuration)

Page 44: Joomla 3.7 Workshop 1 Day

เปิดใช้ SEO เบื้องต้น

Page 45: Joomla 3.7 Workshop 1 Day

ตั้งค่า Server Time Zone

Page 46: Joomla 3.7 Workshop 1 Day

ทำความรู้จัก Extensions ใน Joomla!

Page 47: Joomla 3.7 Workshop 1 Day

Joomla! Extensions แบ่งออกเป็น 5 ประเภท

• Templates - หน้ากากหรือหน้าเว็บไซต์ มีพื้นที่เป็นตำแหน่งต่างๆ ในการแสดงโมดูล

• Modules - เป็นส่วนโปรแกรมเพิ่มเติมที่ใช้แสดงบนตำแหน่งที่มีบนเทมเพลต เช่นข่าวล่าสุด , เมนู , ฟอร์มล็อกอิน ฯลฯ

• Languages - ไฟล์ภาษา • Components - Application เพิ่มเติมนอกเหนือจากการจัดการ Content ซึ่งมีทั้งชนิดที่ใช้งานผ่านด้านหน้าเว็บและใช้งานด้านผู้ดูแลเว็บ เช่น เว็บบอร์ด, แกลลอรี่ ฯลฯ ซึ่งจะแสดงผลในพื้นที่ๆ เป็น Mainbody หลักของเว็บไซต์

• Plugins ฟังก์ชั่นการทำงานเพิ่มเติม ขึ้นอยู่กับชนิดของปลั๊กอิน เช่น อิดิเตอร์ที่ใช้เขียนบทความ , ส่วนของการ Login ฯลฯ

9

Page 48: Joomla 3.7 Workshop 1 Day

Session 6

การจัดการสมาชิก และระดับการเข้าถึง (Users)

Page 49: Joomla 3.7 Workshop 1 Day

การบริหารจัดการสมาชิก

Page 50: Joomla 3.7 Workshop 1 Day

ค่าพื้นฐานในส่วนของ Backend (Administrator)

• Manager จัดการเนื้อหา มีเดีย และเมนูเนื้อหา

• Administrator ตั้งค่าเพิ่มเติม CMT

• Super User ทำได้ทุกอย่าง

ค่าพื้นฐานในส่วนของ Frontend (Site)

• กลุ่มผู้ใช้ทั่วไป (Public) คือผู้ที่เข้ามายังเว็บโดยที่ยังไม่ได้เป็นสมาชิก และยังไม่ได้เข้าระบบ

• กลุ่มสมาชิก (Registered) คือสมาชิกที่เข้าสู่ระบบแล้วเข้าถึงข้อมูลได้มากกว่ากลุ่มผู้ใช้ทั่วไป

• กลุ่มนักเขียน (Author) คือสมาชิกที่เข้าสู่ระบบแล้วสามารถเขียนเนื้อหาเข้าสู่เว็บไซต์ได้

• กลุ่มผู้ตรวจสอบเนื้อหา (Editors) คือสมาชิกที่เข้าสู่ระบบแล้วสามารถเพิ่ม/แก้ไขเนื้อหางานเขียนของนักเขียนรายอื่นๆ ได ้

• กลุ่มผู้เผยแพร่ข้อมูล (Publisher) คือสมาชิกที่เข้าสู่ระบบแล้วทำได้เหมือนกับ Editors และมีสิทธิ์กำหนดให้เนื้อหานั้นๆ เผยแพร่ หรืองดเผยแพร่บนเว็บไซต์

User Groups(Public, Registered, Author, Editor, Publisher, Manager, Administrator, และ Super Users)

https://docs.joomla.org/J3.x:Access_Control_List_Tutorial

Page 51: Joomla 3.7 Workshop 1 Day

Public

• กลุ่มผู้ใช้ทั่วไป (Public) Registered

• กลุ่มสมาชิก (Registered) • Manager • Super User Special

• กลุ่มนักเขียน (Author)

• Manager • Super User

Viewing Access Levels(Public, Registered, Special)

** เป็นชื่อเรียกของ Access Levels โดยแต่ละชื่อเรียกจะประกอบไปด้วย User Group ต่างๆ

https://docs.joomla.org/J3.x:Access_Control_List_Tutorial

Page 52: Joomla 3.7 Workshop 1 Day

https://docs.joomla.org/J3.x:Access_Control_List_Tutorial

กลุ่มที่ต้องการกำหนด

Action การทำงาน Permission ที่จะกำหนด สิทธิ์ที่จะมีผล

Page 53: Joomla 3.7 Workshop 1 Day

Session 7

เริ่มเข้าสู่การสร้างเนื้อหาเว็บไซต์ด้วย Joomla! แบบ Step by Step

Page 54: Joomla 3.7 Workshop 1 Day

โครงสร้าง Content

Page 55: Joomla 3.7 Workshop 1 Day

ตัวอย่าง Site Map ของเว็บ

Page 56: Joomla 3.7 Workshop 1 Day

ตัวอย่างประเภทของข้อมูลในเว็บ

Page 57: Joomla 3.7 Workshop 1 Day

โครงสร้าง Content ใน Joomla

Page 58: Joomla 3.7 Workshop 1 Day

ส่วนของการบริหารจัดการ Categories

Page 59: Joomla 3.7 Workshop 1 Day

ส่วนของการบริหารจัดการ Articles

Page 60: Joomla 3.7 Workshop 1 Day

หน้าจอการเขียนเนื้อหา

Page 61: Joomla 3.7 Workshop 1 Day

Session 8

การทำเมนูไปยัง Category และ Article

Page 62: Joomla 3.7 Workshop 1 Day

การจัดการเมนู

Page 63: Joomla 3.7 Workshop 1 Day

การจัดการรายการเมนูไอเทม

Page 64: Joomla 3.7 Workshop 1 Day

เลือกประเภทเมนู

Page 65: Joomla 3.7 Workshop 1 Day

การจัดการส่วนของ Extensions ต่างๆ

Page 66: Joomla 3.7 Workshop 1 Day

Extensions > Modules

Page 67: Joomla 3.7 Workshop 1 Day

nav-pills ตัวอย่าง การใช้งาน Menu Class Suffix

เพื่อใช้งาน รูปแบบการแสดงผล

จาก css ของ Template

Page 68: Joomla 3.7 Workshop 1 Day

Extensions > Plugins

Page 69: Joomla 3.7 Workshop 1 Day

Session 9

การติดตั้ง / อัพเดท / ยกเลิกการติดตั้งโปรแกรมเสริม

(Extensions > Manage)

Page 70: Joomla 3.7 Workshop 1 Day
Page 71: Joomla 3.7 Workshop 1 Day

Session 10

การใช้งาน Plugins(Plugin Content)

Page 72: Joomla 3.7 Workshop 1 Day
Page 73: Joomla 3.7 Workshop 1 Day

Session 11

การใช้งานระบบจัดการเทมเพลทเว็บไซต์ (Templates)

Page 74: Joomla 3.7 Workshop 1 Day

http://docs.joomla.org/J3.2:How_to_use_the_Template_Manager

แก้ไขรูปแบบ (Style) แก้ไขไฟล์ Template

Page 75: Joomla 3.7 Workshop 1 Day

https://docs.joomla.org/J3.x:How_to_use_the_Template_Manager

Templates Customise

Page 76: Joomla 3.7 Workshop 1 Day

Session 12

การใช้งานระบบจัดการโมดูล (Modules)

Page 77: Joomla 3.7 Workshop 1 Day

New Modules

Page 78: Joomla 3.7 Workshop 1 Day

Session 13

การใช้งาน Maintenance Tools / ตรวจสอบข้อมูลระบบเซิร์ฟเวอร์ที่ใช้อยู่

Page 79: Joomla 3.7 Workshop 1 Day
Page 80: Joomla 3.7 Workshop 1 Day

Session 14

การสำรอง หรือย้ายข้อมูลเว็บไปยัง Server อื่น

Page 81: Joomla 3.7 Workshop 1 Day

การสำรองข้อมูลโดยใช้ AkeeBa Backup

• โหลดคอมโพเน้นท์ AkeeBa Backup Core จากเว็บไซต์ akeebabackup.comhttps://www.akeebabackup.com/products/akeeba-backup.html

• ติดตั้งคอมโพเน้นท์ผ่านทางเมนู Extensions -> Manage -> Install • ตั้งค่าโดยใช้ autoConfig ของคอมโพเน้นท์ จากนั้นสั่ง Backup Now

• ในการ Backup แต่ละครั้งจะได้ไฟล์นามสกุล .jpa เพื่อใช้ในงานร่วมกับ Akeeba KickStart

Page 82: Joomla 3.7 Workshop 1 Day
Page 83: Joomla 3.7 Workshop 1 Day
Page 84: Joomla 3.7 Workshop 1 Day

การติดตั้งเว็บไซต์โดยใช้ Akeeba KickStart

• โหลดไฟล์ Akeeba Kickstart จากเว็บไซต์ akeebabackup.com https://www.akeebabackup.com/products/akeeba-kickstart.html

• ทำการแตกไฟล์ kickstart-core-x.x.x.zip ที่ดาวน์โหลดมา แล้ว Copy ไฟล์ kickstart.php , jquery.min.js, json2.min.js ไปไว้ในโฮสใหม่หรือใน directory ที่ต้องการจะติดตั้ง

• คัดลอกไฟล์นามสกุล .jpa ที่ได้ backup ไว้ไปไว้ในโฮสใหม่ที่ได้คัดลอก kickstart.php ไปไว้

• พิมพ์ url เว็บใหม่เพื่อเรียกใช้ไฟล์ kickstart.php เช่น http://newdomain.com/kickstart.php แล้วทำตามขั้นตอนในหน้าจอหน้าจอ

9

Page 85: Joomla 3.7 Workshop 1 Day

Session 15

Secure Your Website

Page 86: Joomla 3.7 Workshop 1 Day

1. Secure Administrator Login with strong password 2. Take Regular Joomla Backup 3. Use secret key to login into Joomla Administration 4. Are you using latest secure version of Joomla? 5. Monitor your Joomla site 6. Enable Search Engine Friendly (SEF) 7. Delete unwanted & avoid third party un-identified developer’s

extension 8. Scan your website (http://sitecheck.sucuri.net) 9. Keep file/folder permission appropriate 10. Implement Two-Factor Authentication

การดูแลให้ Joomla! มีความปลอดภัย

Page 87: Joomla 3.7 Workshop 1 Day

แหล่งข้อมูลเพิ่มเติม เกี่ยวกับความปลอดภัย Joomla!

• Joomla Vulnerable Extension list – https://vel.joomla.org/

• Joomla Developer Network (Security Centre) – https://developer.joomla.org/security-centre.html

• Joomla Security Documentation – https://docs.joomla.org/Security

• 10 Tools to Scan Website Security – https://geekflare.com/online-scan-website-security-vulnerabilities/

• Joomla Security Best Practice – https://geekflare.com/joomla-security/

• Joomla CVE Details – https://www.cvedetails.com/vulnerability-list/vendor_id-3496/product_id-16499/Joomla-Joomla-.html

Page 88: Joomla 3.7 Workshop 1 Day

Q & A

http://www.joomlacorner.com

http://www.marvelic.co.th