พริตตี้ URL สำหรับการอัปโหลดไฟล์หรือไม่


9

สามารถอัปโหลดไฟล์เช่น PDF ไปยัง URL ที่กำหนดเองได้หรือไม่ ผมอยากจะอัปโหลดไฟล์ PDF ให้แทนwww.example.com/whitepapers/pdf.pdfwww.example.com/wp-uploads/...

ฉันพบปลั๊กอินชื่อWP Easy Uploaderซึ่งดูเหมือนว่าใช้ได้ แต่ฉันต้องการตรวจสอบว่ามีวิธีแก้ไขปัญหาอื่นหรือไม่

ทางออกหนึ่งที่ฉันใคร่ครวญคือให้ถือว่า PDF เป็นหน้าดังนั้นฉันจึงสามารถกำหนดหน้าหลักให้กับ PDF ได้ สิ่งนี้จะจัดการการเปลี่ยนเส้นทางใด ๆ ในกรณีที่ URL ของหน้าหลักมีการเปลี่ยนแปลง

อัปเดต - ไม่พิจารณา WP Easy Uploader อีกต่อไปเนื่องจากฉันไม่ต้องการเข้าถึง FTP จากภายในการติดตั้ง Wordpress เพื่อเหตุผลด้านความปลอดภัย

คำตอบ:


2

สิ่งที่แนบมาในทั่วไป (ภาพ แต่ยังไฟล์เช่นไฟล์ PDF) มีความพิเศษ "หน้าสิ่งที่แนบมา" example.com/main-post/attachment/file-title/ของแบบฟอร์ม ในชุดรูปแบบส่วนใหญ่ใช้เพื่อแสดงรูปภาพที่มีขนาดใหญ่ขึ้น แต่ยังคงอยู่ในเค้าโครงของธีม (ดังนั้นจึงส่งคืนไฟล์ HTML ที่มีรูปภาพอยู่ไม่ใช่รูปภาพโดยตรง)

คุณสามารถใช้ประโยชน์จากสิ่งนี้ได้โดยสร้างไฟล์เทมเพลตที่ให้บริการไฟล์โดยตรงแทนที่จะแสดงเฉพาะ แล้วถ้าคุณสร้างหน้าเว็บexample.com/whitepapers/ที่มีสิ่งที่แนบมาที่เรียกว่าfile.phpURL example.com/whitepapers/attachment/fileที่ของไฟล์ที่จะ

คุณจะต้องสร้างไฟล์ในไดเรกทอรีธีมของคุณที่เรียกว่าattachment.php(ถ้าคุณต้องการทำสิ่งนี้สำหรับสิ่งที่แนบมาทั้งหมด) หรือapplication.php(ถ้าคุณต้องการทำสิ่งนี้กับไฟล์ที่มีประเภท mime เท่านั้นapplication/*) ในไฟล์นั้นคุณจะได้รับตำแหน่งไฟล์แนบจากนั้นreadfile()ไปยังเบราว์เซอร์ ฉันเดาว่ามีปลั๊กอินที่สามารถทำได้เพื่อคุณ


จะให้ความคิดนี้และลองทำบางสิ่ง ขอบคุณสำหรับเคล็ดลับ
Matthew Xerri

ฉันกำลังคิดเกี่ยวกับเรื่องนี้อีกครั้งและฉันมีคำถาม 2 ข้อ: 1) หากฉันแนบไฟล์ Whitepapers ไปยังหน้าอื่นฉันมี 2 URL สำหรับไฟล์เดียวกันซึ่งไม่เป็นมิตรกับ SEO 2) ตัวไฟล์เองจะไม่มี URL แต่เป็นเพียง URL ขึ้นอยู่กับว่าแนบมาหรือไม่ ขวา?
Matthew Xerri

@thitititect: หากคุณเชื่อมโยงไปยังไฟล์เดียวกันจากหน้าอื่นมันจะมี URL เหมือนกัน (เช่นเมื่อคุณใช้รูปภาพเดียวกันในสองหน้าที่แตกต่างกัน) หากไฟล์นั้นไม่ได้ถูกแนบมากับโพสต์มันจะยังคงมี URL (ทั่วไป) แต่ฉันจะต้องค้นหาสิ่งที่มันเป็นแล้ว คุณสามารถเปลี่ยน URL ของไฟล์แนบเพื่อให้ทุกคนปรากฏ/media/ว่าคุณต้องการ
Jan Fabry

@Jan โซลูชันของคุณต้องการให้ฉันสร้างหน้าว่างสำหรับแต่ละไฟล์สื่อหรือไม่ นอกจากนี้ฉันไม่สามารถระบุเส้นทางที่แตกต่างกันสำหรับหมวดหมู่สื่อที่แตกต่างเช่นนี้ นี่คือสถานการณ์ที่ฉันต้องการ ฉันต้องการอัปโหลด PDF ตั้งหมวดหมู่เป็น PDF นั้น (ซึ่งไม่เกี่ยวข้องกับโพสต์ / หน้าที่แนบไว้) และมี URL ที่สร้างขึ้นเป็น PDF นั้นเช่นexample.com/CATEGORY/FILENAME.pdf
Matthew Xerri

@ththititect: นั่นควรเป็นไปได้ด้วยกฎการเขียนขั้นสูงบางอย่าง (อ่าน: ไม่ใช้รหัส "core" จาก WordPress) ให้ฉันคิดเกี่ยวกับมันและฉันจะพยายามกลับมาพร้อมคำตอบ
Jan Fabry

2

อัพเดท : Found Media Library Categoriesซึ่งเรียงลำดับสื่อตามหมวดหมู่ที่กำหนดเอง ทั้งหมดที่ฉันต้องการตอนนี้ก็คือปลั๊กอินที่คล้ายกันเพื่อเพิ่มหมวดหมู่นั้นใน URL เพื่อให้ฉันสามารถทำการเขียน URL ใหม่และรับสิ่งที่ฉันต้องการ!


พบปลั๊กอินบางอย่าง

การย้ายที่ตั้งใหม่ช่วยให้คุณสามารถอัปโหลดไปยังโฟลเดอร์ใดก็ได้แล้วมีรายการแบบหล่นลงเมื่ออัปโหลดสื่อเพื่อวางสื่อใหม่นั้นในตำแหน่งที่คุณกำหนดเอง ดูเหมือนว่าจะใช้ได้ แต่ไฟล์จะอยู่ในโฟลเดอร์จริง มันจะดีกว่าถ้ามันสามารถอัปโหลดอะไรก็ได้ในโฟลเดอร์เนื้อหาเดียวและ 'โฟลเดอร์' ที่ใช้ในลิงก์จะเป็นเพียงความคิดเห็น นอกจากนี้ยังใช้งานไม่ได้กับการติดตั้ง localhost แบบด่วน มันพยายามเข้าถึง C: \ wamp \ www ... แทนที่จะเป็นhttp: // localhost /

Custom Upload Dirอนุญาตให้คุณอัปโหลดในไดเรกทอรีที่กำหนดเอง แต่สิ่งนี้ไม่เป็นไปตามข้อกำหนดของฉัน

เกี่ยวกับWP Easy Upload - ฉันไม่ต้องการใช้เพราะฉันไม่ต้องการให้ FTP เข้าถึงปลั๊กอินใด ๆ ภายในการติดตั้งด้วยเหตุผลด้านความปลอดภัย


1

โซลูชัน # 1 คุณสามารถเปลี่ยนเส้นทางสื่อของคุณ ไปที่การตั้งค่า -> สื่อเปลี่ยนค่าเริ่มต้น "wp-content / uploads" เป็น "whitepapers" แน่นอนถ้าคุณอัปโหลดอื่นที่ไม่ใช่ whitepapers โซลูชันนี้ใช้งานไม่ได้

โซลูชัน # 2 ใช้ Pretty Link เพื่อปรับแต่งพา ธ ของคุณฉันใช้ Pretty Links ตั้งแต่ฉันใช้ WordPress ไม่กี่ปีที่ผ่านมา

ส่วนใหญ่จะลดความซับซ้อนของเส้นทางไปยังไฟล์

คุณสามารถแมป "abc.com/whitepaper/file.pdf" เป็น "abc.com/wp-content/uploads/file.pdf"

http://blairwilliams.com/pretty-link/


ขอบคุณสำหรับทิป. ฉันเดาว่าด้วยปลั๊กอินนี้ฉันจะต้องสร้าง URL ที่สวยงามหลังจากอัปโหลดแต่ละครั้งใช่ไหม
Matthew Xerri

@thititect - ใช่นี่เป็นปลั๊กอินคุณจะต้องสร้าง URL สำหรับการอัปโหลดแต่ละครั้ง สิ่งที่ดีคือคุณสามารถจับคู่ URL สวย ๆ กับ URL ใด ๆ ไปยังเว็บไซต์ของคุณหรือเว็บไซต์ภายนอก กล่าวคือ mrwes.net/linkedin
mrwes

ฉันคิดว่าปลั๊กอินสร้างโอเวอร์เฮดมากเกินไปเพราะมันเรียกใช้จาวาสคริปต์การติดตามและอื่น ๆ เรามีฟังก์ชั่นการทำงานส่วนใหญ่อยู่แล้ว เราต้องการบางสิ่งบางอย่างเพื่อจัดระเบียบการอัปโหลดที่ดีกว่า
Matthew Xerri
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.