บริษัทปัจจุบันของฉันต้องการอัปโหลดไฟล์ Microsoft Publisher ไปยังเพจที่มีการป้องกันด้วยรหัสผ่านใน WordPress ตรวจสอบแล้วประเภท mime คือ application/octet-stream
และ ไม่ใช่ application/x-mspublisher
ในมุมมองของเซิร์ฟเวอร์ WordPress
ฉันรู้ว่าเราสามารถปิดใช้งานการกรองรูปแบบได้ทั่วโลกใน wp-config.php
(ตามที่แนะนำที่นี่: Wordpress: ขออภัย ไฟล์ประเภทนี้ไม่ได้รับอนุญาตด้วยเหตุผลด้านความปลอดภัยเมื่อพยายามอัปโหลดไฟล์รูปภาพมาตรฐาน) เช่นนี้:
define(‘ALLOW_UNFILTERED_UPLOADS’, true);
...แต่ฉันอยากจะหลีกเลี่ยงสิ่งนั้นจริงๆ นั่นเป็นฝันร้ายของการรักษาความปลอดภัยที่กำลังจะเกิดขึ้น Imo
ฉันรู้ด้วยว่าสามารถปิดใช้งานการกรองรูปแบบในสำเนาชั่วคราว อัปโหลดไฟล์ จากนั้นเปิดใช้งานอีกครั้งได้ ฉันกำลังทำสิ่งนั้นในเวลานี้ อย่างไรก็ตาม ฉันต้องการให้ทีมสามารถอัปโหลดไฟล์ผู้เผยแพร่ในอนาคตได้โดยไม่จำเป็นต้องให้นักพัฒนาเข้ามาแทรกแซง
ฉันลองใช้รหัสนี้ในไฟล์ functions.php
ของธีมลูกของฉันแล้ว แต่ก็ยังใช้งานไม่ได้
function my_custom_upload_mimes($mimes = array()) {
$mimes['pub'] = "application/octet-stream";
return $mimes;
}
add_action('upload_mimes', 'my_custom_upload_mimes');
ฉันยังใช้อักษรตัวพิมพ์ใหญ่เป็น $mimes['PUB']
และนั่นก็ใช้ไม่ได้เช่นกัน
นี่คือข้อความแสดงข้อผิดพลาดที่ฉันยังคงได้รับ: Sorry, this file type is not permitted for security reasons.
มีใครเขียนโค้ดข้างต้นแล้วคิดว่าเหตุใดจึงยังใช้งานไม่ได้