您可以通过将以下代码添加到主题函数文件或创建插件来实现这一点。除非用户登录,否则不会显示链接。
这并不是最好的方法,因为热链接仍然可以通过使用文件的直接路径来完成。您需要将代码添加到。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]