Досить URL-адреси для завантаження файлів?


9

Чи можна завантажувати файли, такі як PDF, у користувацькі URL-адреси? Я б хотів завантажити PDF www.example.com/whitepapers/pdf.pdfзамість www.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.php, буде URL-адреса файлу example.com/whitepapers/attachment/file.

Вам потрібно створити файл у своєму тематичному каталозі під назвою або attachment.php(якщо ви хочете зробити це для всіх вкладених application.phpфайлів ), або (якщо ви хочете зробити це лише для файлів типу mime типу application/*). У цьому файлі ви отримуєте розташування файлу вкладення, а потім readfile()його до браузера. Я думаю, там уже є плагіни, які можуть зробити це за вас.


дамо цьому подумати і спробувати деякі речі. Дякую за пораду
Метью Ксеррі

Я знову замислювався над цим питанням, і у мене є 2 питання: 1) Якщо я додаю файл Whitepapers на іншу сторінку, то у мене є 2 URL-адреси для одного файлу, що не так зручно для SEO 2) Сам файл не мав би URL-адреси але лише URL-адреса залежно від того, додана вона чи ні. Правильно?
Метью Ксеррі

@thearchitect: Якщо ви посилаєтесь на один і той же файл з іншої сторінки, він буде мати однакову URL-адресу (наприклад, коли ви використовуєте одне і те ж зображення на двох різних сторінках). Якщо файл не був доданий до публікації, він все одно матиме (загальну) URL-адресу, але мені доведеться шукати, що це було тоді. Ви можете змінити URL-адресу вкладення, щоб вони виглядали так, /media/ніби ви хочете.
Ян Фабрі

@Jan Чи вимагає вашого рішення я створити порожню сторінку для кожного медіа-файлу? Також я не можу вказати різні шляхи для різних категорій медіа, як це. Ось сценарій, який я хотів би. Я хочу завантажити PDF, встановити категорію для цього PDF (який не має відношення до публікації / сторінки, до якої він додається) і мати URL-адресу, створену для цього PDF, наприклад example.com/CATEGORY/FILENAME.pdf
Matthew Xerri

@thearchitect: Це повинно бути можливо за допомогою деяких вдосконалених правил перезапису (читати: не з "основним" кодом від WordPress). Дозвольте мені подумати над цим, і я спробую повернутися з відповіддю.
Ян Фабрі

2

ОНОВЛЕННЯ : знайдені категорії медіатеки, які сортують медіа за спеціальними категоріями. Тепер мені потрібно лише подібний плагін додати цю категорію до URL-адреси, щоб я міг виконувати переписування URL-адрес і отримувати те, що мені потрібно!


Знайшли пару плагінів.

Перемістити завантаження дозволяє завантажувати в будь-яку папку, а потім мати випадаючий список під час завантаження медіа, щоб розмістити цей носій у ваших користувацьких місцях. Це виглядає нормально, але файли розміщуються у фактичних фізичних папках. Було б краще, якби він міг завантажувати що-небудь у одну тематичну папку, а "папка", що використовується у посиланні, була б лише постійною посиланням. Крім того, це не добре працює при швидкій установці localhost. Він намагався отримати доступ до C: \ wamp \ www ... замість http: // localhost /

Спеціальна програма Dir Dir дозволяє завантажувати файли в спеціальні каталоги, але це не відповідає моїм вимогам.

Про WP Easy Upload - я не хочу його використовувати, оскільки я не хочу надати FTP доступ до будь-якого плагіна всередині установки з міркувань безпеки.


1

Рішення №1 Ви можете змінити медіа-шлях. Перейдіть у розділ Налаштування-> Медіа Змінити за замовчуванням "wp-content / uploads" на "whitepapers", звичайно, якщо ви завантажуєте інше, ніж білий, це рішення працюватиме не так добре.

Рішення №2 Використовуйте гарне посилання для налаштування вашого шляху. Я використовую гарненькі посилання з тих пір, як я використовую WordPress; ось уже кілька років.

Переважно для спрощення шляхів до файлів.

Ви можете зіставити "abc.com/whitepaper/file.pdf" у "abc.com/wp-content/uploads/file.pdf"

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


дякую за пораду. Я здогадуюсь, що за допомогою цього плагіна мені потрібно створити гарну URL-адресу після кожного завантаження?
Метью Ксеррі

@thearchitect - так, це плагін, вам потрібно буде створити URL-адресу для кожного завантаження. Приємно, що ви можете зіставити будь-яку гарненьку URL-адресу в будь-яку URL-адресу вашого сайту чи зовнішнього сайту. тобто. mrwes.net/linkedin
mrwes

Я думаю, що плагін створює занадто багато накладних витрат, оскільки він виконує javascript, відстеження тощо. У нас вже є більшість його функціональних можливостей. Нам просто потрібно щось, щоб краще організувати завантаження
Matthew Xerri
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.