it-swarm.asia

كيف يمكنني إضافة مسار نسبي إلى رابط ملف pdf في قائمة drupal

لقد أنشأت رابط القائمة لملف pdf. يمكنني استخدام مسار كامل مثل "http: //website/sites/all/myfiles/file.pdf" ، ولكن إذا حاولت وضع رابط نسبي مثل "sites/all/myfiles/file.pdf" ، فلن عمل. إذا كان لدى أي شخص فكرة من فضلك قل لي.

5
Abhijeet

الشيء في نظام القائمة هو أن ما تكتبه ليس مسارًا نسبيًا ، ولكنه عنوان داخلي Drupal URL.

نظرًا لأن ما تبحث عنه ليس Drupal ، ولكن بدلاً من ذلك خادم ملفات ثابت خارج Drupal بواسطة خادم الويب الخاص بك ، فإن خياراتك محدودة.

  • يمكنك كتابة عنوان url الكامل كما حاولت بنفسك
  • يمكنك إنشاء وحدة نمطية/موضوع حيث يمكنك جعل ذلك ممكنًا ، إما عن طريق إضافة الرابط الإضافي أو إنشاء مسار drupal مسار يعيد التوجيه إلى الملف الثابت.

من بين هؤلاء ، أعتقد شخصيًا أن المسار المطلق هو مؤجر الشرور ، إلا إذا كنت بحاجة إلى القيام بذلك كثيرًا.

6
googletorp

فقط استخدم رمز القائمة الوحدة النمطية. انسخ عنوانك المطلق PDF url إلى المسار النصي الخاص بك واستبدل اسم الخادم بـ [site: url]. وتأكد أيضًا من تنشيط مربع اختيار الرموز المميزة واحفظ عنصر القائمة ... بالاشتراك مع سمات القائمة وحدة يمكنك حتى ربط ملف PDF بعلامة تبويب/نافذة متصفح فارغة إذا كنت ترغب في ذلك.

5
SaV

يستخدم دروبال "عناوين URL نظيفة" لذلك عندما تكون في صفحة node/123 وتتخيل رابطًا مثل:

<a href="sites/all/myfiles/file.pdf">PDF file</a>

سيقوم متصفحك بتفسيرها على أنها "node/123/sites/all/myfiles/file.pdf" والتي لن تعمل. يجب عليك وضع "/" في بداية عنوان URL:

<a href="/sites/all/myfiles/file.pdf">PDF file</a>

بالطبع ، إذا كان موقعك في دليل فرعي ، فأنت بحاجة إلى إلحاقه ؛ الطريق الأسلم هو استخدام l() :

<?php echo l('PDF file', 'sites/all/myfiles/file.pdf'); ?>

تحرير مدينة دبي للإنترنت ، 18: استخدم l() حسب نصيحة kiamlaluno.

4
tostinni

ما عليك سوى استخدام الوحدة Pathologic ، وستعمل روابطك النسبية على ما يرام.

0
AgA

يمكنك أيضًا استخدام قائمة HTML وحدة مع وحدة عناصر قائمة خاصة . سيتيح لك ذلك وضع نقطة ربط إلى ملفك كعنوان رابط القائمة ، وعلامة nolink كمسار القائمة.

ما عليك سوى إلقاء نظرة على لقطة الشاشة:

File path as menu item

0
piotrk91
  • إنشاء نوع محتوى جديد (مثل "تنزيل ملف")

  • امنحه عنوان URL للحقل (رابط أو حقل نص عادي)

  • تجاوز ملف القالب المستخدم في السمة (مثل العقدة - file-download.tpl.php)
  • في هذا الملف ، ضع كود PHP كود لتحميل الحقل بعنوان URL للملف ، ثم ضع الكود التالي:

    Header("Location: file_address"); 
    
  • قم بإنشاء نمط في وحدة Pathauto لهذا النوع من المحتوى (على سبيل المثال "file/download/name" أو "download/file_id")

  • ثم يمكنك وضعها في القائمة دون مشاكل

أراهن أن هناك طريقة أسهل ، ولكن هذا يجب أن يؤدي العمل أيضًا. يجب النظر فيه مرتين في مسألة الأمن.

0
wtk