Einzelnen Beitrag anzeigen

Balu der Bär
(Gast)

n/a Beiträge
 
#1

PHP-Datei soll auf Funktionen von Wordpress zugreifen

  Alt 27. Dez 2007, 16:31
Morgen,

diesmal ein etwas größeres Problem, für welches es kein fertiges Plugin gibt, jedenfalls hab ich keins gefunden.

Und zwar sollen User in meinem Blog Dateien nur herunterladen dürfen, wenn diese (User) eingeloggt sind. Von außen soll kein Zugriff auf die Dateien möglich sein, nur wenn der Wordpress-User eingeloggt ist. Ich war komplett ratlos und holte mir Hilfe bei Lukas.

Dieser schlug vor, dass Downloadverzeichnis bzw. die Dateien mittels htaccess vor HTTP-Zugriffen von außen zu schützen. Dies klappte auch, man kann nun nicht mehr auf die Dateien zugreifen. Da schlug er weiter vor, eine neue Download-Datei zu erstellen, welche eingeloggten Usern den Download ermöglicht. Das ganze soll ungefähr so aussehen:
Code:
<?php global $user_ID; global $userdata;
  get_currentuserinfo(); //Wordpress-Funktion

    if ('' == $user_ID) { $loggedin = false; } else { $loggedin = true; } // ich prüfe ob eingeloggt

if (isset($_GET['file']) && !is_array($_GET['file']) && $_GET['file'] != '' && strlen($_GET['file']) < 2)
 {
  $requestedfile = $_GET['file'];


switch($loggedin)

  case true:
    header('Content-Disposition: Download; filename='.basename($requestedfile));
    echo file_get_contents('/ddl/'.basename($requestedfile));
    break;
  case false:
 
  }
    ?>
     
HIER HTML FÜR ZUGRIFF VERBOTEN
 
<?php
 

 
?>
Der Theorie nach sollte das klappen, allerdings praktisch nicht, da wie erwartet wenn ich die Datei aufrufe meckert der Server, dass er die Funktion get_currentuserinfo() nicht kennt. Ich müsste es also irgendwie hinbekommen, dass ich von dieser Datei auf den Wordpress-Kontext zugreifen kann. Bloß wie?

Hat jemand ne Idee oder weiß einen anderen Weg wie Dateien nur von eingeloggten Usern heruntergeladen werden dürfen?

Besten Dank schonmal
  Mit Zitat antworten Zitat