Discourse コミュニティでファイルをホストするために s3 を使用しています。ios アプリを作成し、アプリで開くのではなく PDF ファイルをダウンロードする必要があります。
ダウンロードリンクの解決策を見つけました。
<a href="download-url?wtn-download-file=true"> download File</a>
しかし、s3 にアップロードされた pdf についてはどうすればよいかわかりません。
Discourse コミュニティでファイルをホストするために s3 を使用しています。ios アプリを作成し、アプリで開くのではなく PDF ファイルをダウンロードする必要があります。
ダウンロードリンクの解決策を見つけました。
<a href="download-url?wtn-download-file=true"> download File</a>
しかし、s3 にアップロードされた pdf についてはどうすればよいかわかりません。
編集:トピックを誤解していたため、回答を削除します ![]()
thokaさん、ありがとうございます ![]()
うーん。彼の要求は私の機能リクエストの正反対のようです…
こちらのソースによると、download をテーマコンポーネント経由でこれらのリンクに追加することで、目的の動作を実現できるはずです。
PDFリンクをすべて変更する方法を見つける必要があります…約3000件のリンクがあります
ディスコースの再マッピングの問題であるべきです
注意:まずステージングサイトでテストしてください。期待どおりに動作しない可能性があります。
こんにちは ![]()
このトピックは同じだと思います:Force download pdf on IOS
これには、api.decorateCookedElement を使用する必要があります。
次のようなものでうまくいくはずです ![]()
これをコンポーネントのヘッダーセクションに配置します。
<script type="text/discourse-plugin" version="0.8.42">
api.decorateCookedElement(
element => {
const pdfFiles = element.querySelectorAll("a.attachment[href$='.pdf']");
if (!pdfFiles.length) {
return;
}
pdfFiles.forEach((pdf) => {
pdf.setAttribute("download", "");
});
},
{ id: "download-pdf", onlyStream: true }
);
</script>
私のデバイスでテストしたところ、うまくいきましたが、他の属性などを使用したい場合は、簡単に変更できます… お役に立てば幸いです ![]()