Environments
SMF 1.1.10
Wordpress 2.9.2

เมื่อวานผมได้ include ไฟล์ SSI.php เข้าไปใช้งานในเวิร์ดเพรส เพื่อที่จะนำเอาโพสต์กระทู้ล่าสุดในเว็บบอร์ด SMF ไปแสดงที่หน้าแรกของเวิร์ดเพรส SMF ที่ใช้เป็นเวอร์ชั่น 1.1.10 ไม่ใช่ที่เว็บ select2web.com นี้หรอกนะครับ ผมใช้ที่เว็บ http://www.kitchenaidthai.com/ ท่านเจ้าของเว็บเขาจ้างให้ออกแบบให้ คิดราคาคนกันเองอย่างแรง ถ้าท่านอยากเห็นว่าผมนำเอากระทู้ล่าสุดไปแสดงอย่างไร ก็ลองเข้าไปดูที่เว็บ http://www.kitchenaidthai.com/ ดูครับ ตรงหัวข้อ กระทู้ล่าสุดจากเว็บบอร์ด น่ะครับ (ผมได้เขียนปรับแต่งไฟล์ SSI.php เล็กน้อย เพื่อให้มันแสดง avartar ออกมาด้วย)

หลังจากอินคลูดไฟล์ และลองรันหน้าแรกของเวิร์ดเพรสดู ปรากฎว่าเกิดเออเร่อ Fatal error: Cannot redeclare is_admin() มันบอกว่า ไม่สามารถประกาศฟังก์ชั่น is_admin() ซ้ำ

คือตัวของเวิร์ดเพรสเองมันได้ประกาศฟังก์ชั่น is_admin() ไปแล้ว และไฟล์ Sources/Security.php ของ SMF ก็มีการประกาศฟังก์ชั่น is_admin() ขึ้นมา

ฟังก์ชั่นของทั้งสองโปรแกรม ( เวิร์ดเพรส และ SMF ) มันซ้ำกัน

ให้ท่านเปิดไฟล์ Sources/Security.php ของ SMF ไปที่บรรทัด 835 แล้วลบ

835
836
837
838
839
// Grudge chickens out and puts this in for combatibility. This will be ripped out on day one for SMF 1.2 though
function is_admin()
{
	isAllowedTo('admin_forum');
}

พี่หรั่งแกบอกว่า ไอ้ฟังก์ชั่นตัวนี้ SMF มันไม่ได้ใช้อยู่แล้ว มันเพียงแต่ประกาศเพื่อความเข้ากันได้กับอะไรไม่รู้ แล้วก็บอกว่า มันจะถูกตัดทิ้งในเวอร์ชั่น 1.2