[J1.0]ทำให้สามารถ upload ไฟล์ flash ผ่าน media manager ได้

แก้ไขล่าสุด ใน วันเสาร์ที่ 13 มิถุนายน 2552 เวลา 18:21 น.
เขียนโดย Prasit Gebsaap
วันศุกร์ที่ 09 พฤษภาคม 2551 เวลา 05:52 น.
ปกติแล้วใน Joomla จะอนุญาติให้ upload ไฟล์ที่เป็น image ไฟล์ได้เท่านั้น แต่มีในหลายกรณีเราต้องการที่จะใส่ไฟล์ flash (.swf) ในเนื้อหา จึงจำเป็นต้องใช้วิธีการ FTP แทนซึ่งเป็นวิธีการที่ไม่ค่อยจะสะดวกนัก แต่อย่างไรก็ตามหลังจากค้นหาโดยใช้ google ผมพบว่าวิธีการทำให้ Joomla สามารถ upload ไฟล์ FTP นั้นง่ายมากเลย เรามาลองดูกันเลยดีกว่า
ไฟล์ที่เราต้องทำการแก้ไขคือ /includes/joomla.php ลองเปิดไฟล์ดูนะครับ ไฟล์ของผมเป็น Joomla Laithai 1.0.15 นะครับ เปิดแล้วก็ลองค้นหา function Images ใน function หาบรรทัดต่อไปนี้ (ประมาณบรรทัดที่ 4825 สำหรับ Joomla 1.0.15)
look for eregi(
foreach ( $imageFiles as $file ) {
if ( eregi( "bmp|gif|jpg|png",
$file ) ) { $images[] = mosHTML::makeOption( $file );
}
}
%C2%A0%C2%A0foreach%20%28%20%24imageFiles%20as%20%24file%20%29%20%7B%0A%C2%A0%C2%A0%C2%A0if%20%28%20eregi%28%20%22bmp%7Cgif%7Cjpg%7Cpng%22%2C%20%24file%20%29%20%29%20%7B%0A%C2%A0%C2%A0%C2%A0%C2%A0%24images%5B%5D%20%3D%20mosHTML%3A%3AmakeOption%28%20%24file%20%29%3B%0A%C2%A0%C2%A0%C2%A0%7D%0A%C2%A0%C2%A0%7D
และแก้ไขบรรทัดต่อไปนี้
if ( eregi( "bmp|gif|jpg|png",
$file ) ) {
%C2%A0%C2%A0%C2%A0if%20%28%20eregi%28%20%22bmp%7Cgif%7Cjpg%7Cpng%22%2C%20%24file%20%29%20%29%20%7B
เป็นดังนี้ (เพิ่ม |swf เข้าไปนะครับ)
if ( eregi( "bmp|gif|jpg|png|swf",
$file ) ) {
%C2%A0%C2%A0%C2%A0if%20%28%20eregi%28%20%22bmp%7Cgif%7Cjpg%7Cpng%7Cswf%22%2C%20%24file%20%29%20%29%20%7B
เป็นยังไงครับ ง่ายมากเลยใช่มั๊ยครับ เพียงแต่ในกรณีที่มีการออก version ใหม่ที่มีการแก้ไขไฟล์ /includes/joomla.php จะต้องมีการแก้ไขใหม่ทุกครั้ง
Reference from http://www.joomla-tips.org