พื้นฐาน Joomla

ย่อหน้าอย่างไร ให้ดูดี
จากบทความที่แล้ว "จัดบทความอย่างไร ให้ดูดี" ซึ่งได้กล่าวถึงการเว้นระยะห่าง การใส่เส้น Read More...

เทคนิค Joomla

ลืม Password Admin
Password นั้น สำหรับผู้จัดทำ Website ก็จะต้องจดจำไว้หลายชุดเหลือเกิน ไหนจะมี Password สำหรับใช...

แนะนำ Extension

สร้างแบบฟอร์มด้วย CK Forms
แบบฟอร์มสำหรับรับการติดต่อจากผู้เยี่ยมชม หรือจะเป็นฟอร์มลงทะเบียนต่างๆ เอ่... ผมเรียกมันว่าแบบฟ...
( 2 Votes )
Modify Joomla สำหรับตอนที่ 2 นี้ จะมาลองแก้ไขโมดูล JF Total Users กันครับ , สำหรับคนที่เคยใช้โมดูล JF Total Users มาก่อนคงจะพอทราบนะครับว่า มันมีไว้สำหรับแสดงผลจำนวนผู้เข้าชมแต่ละช่วงเวลา เช่น วันนี้ , สัปดาห์นี้ , เดือนนี้ และ สมาชิกล่าสุด ซึ่งดูแล้วก็คงคิดว่าไม่ค่อยมีอะไรให้น่าเล่น แต่เราลองมาเล่นเพื่อเป็นพื้นฐานกันก็ได้

Modify JF Total Users

Modify JF Total Users

แต่บังเอิญผมได้เคยติดตั้งโมดูลนี้ไปให้ลูกค้ารายหนึ่ง แล้วได้รับการร้องขอมาว่า อยากได้แสดงผู้สมัครล่าสุด 10 คนแทน แน่นอนล่ะครับว่า โมดูลตัวอื่นที่ใช้งานได้มันก็มี แต่ด้วยความหน้ามืดตามัว ผมเลยจัดการ Modify โมดูลตัวนี้ซะ

การแก้ไขส่วนแสดงผลของโมดูลนั้น มักจะอยู่ที่ mod_ชื่อโมดูล.php หรือไม่ก็ภายในไดเร็คทอรี่ tmpl/default.php มันมีไม่เยอะหรอกครับพวกโมดูลเล็ก ๆ เปิดแป๊บเดียวก็หาเจอ ดังนั้นผมจึงไล่เปิดโมดูลนี้ ที่ไฟล์ mod_jf-totalusers.php เป็นไฟล์แรก แล้วก็พบดังนี้

// ULTIMO
$ultimo_reg = "SELECT username FROM #__users  WHERE block=\"0\" AND usertype <> \"administrator\" AND usertype <> \"superadministrator\" ORDER BY registerDate DESC LIMIT 1";
$db->setQuery($ultimo_reg);
$ultimo =& $db->loadResultArray();

ซึ่งแน่นอน มันคือการแสดงผลของโมดูลตัวนี้ ซึ่งเป็นการทำงานโดยเรียกจากฐานข้อมูลมาแสดงผลโดยตรง แปลได้ว่า ให้เลือกผู้ใช้งานจากตาราง jos_users ที่ไม่ถูกบล็อก และไม่ใช่ Administrator กับ Super Administrator โดยเรียงลำดับตามวันที่ล่าสุด จำนวน 1 คน , ดังนั้น ผมจึงแก้ไขมันซะ

$u = "SELECT name,registerDate FROM jos_users WHERE block=\"0\" AND usertype <> \"Administrator\" AND usertype <> \"Super Administrator\" ORDER BY registerDate DESC LIMIT 10";

แปลได้ว่า ให้เลือกผู้ใช้งานจากตาราง jos_users ที่ไม่ถูกบล็อก และไม่ใช่ Administrator กับ Super Administrator โดยเรียงลำดับตามวันที่ล่าสุด จำนวน 10 คน
เปลี่ยนค่า LIMIT 10 ไม่พอ ต้องมา fetch ด้วย

$result = mysql_query($u);
$i=0;
while ($array = mysql_fetch_array($result)) {
$i++;
echo "คุณ : ".$array['name']."<br>";
}

นี่เป็นตัวอย่างง่าย ๆ อีกเช่นกัน สำหรับการเริ่มต้น Modify อย่าลืมว่า Joomla มันคือ PHP ดังนั้น หากเราต้องการอะไรนิด ๆ หน่อย ๆ เราก็แทรก เติม เสริม แต่ง ให้กับมันได้ครับ เรียบร้อยครับ แสดงผล 10 คนล่าสุดได้แล้ว Tongue out

Modify ได้อย่างใจ ตอนที่ 2 JF Total Users