web-dev-qa-db-ja.com

パスワード保護メディア

ユーザーではなく、当社のウェブサイトへの訪問者に対してPDFをパスワードで保護することは可能ですか?メディアにPDFをアップロードしてリンクを作成しましたが、そのリンクを含むページ全体ではなく、そのPDFだけをパスワードで保護する必要があります。それ。

1
Sharon Drake

機能し、コーディングを必要としない追加の解決策は、PDFを投稿に挿入し、その投稿を保護することです。次に投稿をページに挿入します

0
Matt Morgan

テーマ関数ファイルに以下のコードを追加するか、プラグインを作成することでこれを行うことができます。ユーザーがログインしていない限り、これはリンクを表示しません。

ホットリンクがファイルへの直接パスを使用することによってまだ行われることができる限り、これをこれまで行うための最善の方法ではありません。ホットリンクを停止するには、あなたの.htaccessファイルにコードを追加する必要があります。

以下のセクションでは、テーマ関数ファイルにこれを追加する必要があるショートコードを作成しますが、テーマの更新時に削除されるため、この方法を使用するとプラグインの作成がよりスマートになります。

function foobar_func(){
// Checks if the user is logged in  
if ( is_user_logged_in() ) {
    // Add the files link here

    // ID of an attachment found in the media section googling will show you how to find the PDF id if you don't know.
    $id = 9;
    // Display a link of the media file
    echo wp_get_attachment_link( $id, '' , false, false, 'My link text' );  
} else {
    // You can add a message if you wish to tell people to login to view or delete the line below to remove the text.
    echo 'Login to view file';
}
}
add_shortcode( 'foobar', 'foobar_func' );

その後、ファイルを表示したいページテキストエディタにこのコードを追加します。これはファイルへの直接リンクを止めませんが、ログインしていない人へのリンクを表示しません。

[foobar]
0
Sam