Hallöchen...
ich habe ein kleines Problemchen mit einer Pfadangabe in einem selbstgebauten Site-Template.
Kurz die Situation. Ich habe ein Verzeichnis was ich auslesen möchte und die ausgelesenen Dateien sollen tabellarisch dargestellt werden. Das anzeigen selbst klappt auch einwandfrei!
Ordner-Struktur
wp-content
- uploads
-- media
--- mp3
--- fun
Und es geht um die Dateien im Fun- und MP3-Ordner
Dazu muss ich das Verzeichnis angeben, das geschieht so:
Mit der URL werden die Dateien wunderbar aufgelistet und man kann die nötigen Infos sehen und auf die gewünschte Datei klicken.
Und nun kommt mein Problem.
Will ich nun eine Datei runterladen, so existiert diese nicht, weil der Pfad zur Datei falsch ist!
Plötzlich lautet der Pfad zur Datei:
Der korrekte Pfad zu dieser Datei wäre aber:
Da die Dateien auf der "Media"-Seite dargestellt werden, setzt er dieses "media" einfach mit in die URL - somit ist der Pfad ungültig!
Versuche ich nun die vollständige URL in $verzeichnis zu schreiben, also so:
dann findet er wiederum die Dateien nicht.
Die Dateien in den Ordnern sind auch nicht über Wordpress hochgeladen worden, sondern direkt via FTP.
Ich hoffe mir kann da jemand helfen.
Ich habe schon öfter versucht in solch Site-Templates vollständige Pfade anzugeben, aber die wurden alle ignoriert oder nicht gefunden.
Wieso das?
Ich danke schonmal
PS.: Hier der komplette Code zum Auslesen der Dateien - so wie er jetzt ist und die Dateien auch darstellt, aber man die Dateien nicht runterladen kann, weil der Dateipfad falsch ist.
// Verzeichnis mit den Dateien
$verzeichnis = './wp-content/uploads/media/mp3/';
// Tabellenkopf
echo '<table class="media-table">';
echo '<tr class="media-head-tr">';
echo '<td class="media-head-name">Unser Music-Store - runterladen, reinhören und feiern!</td>';
echo '<td class="media-head-size">Größe</td>';
echo '<td class="media-head-date">Aktualisiert</td>';
echo "</tr>\n";
// Verzeichnis auslesen und Dateien ausgeben
foreach (new DirectoryIterator( $verzeichnis ) as $datei)
{
if (!$datei->isDir() && !$datei->isDot())
{
echo '<tr class="media-list-tr">';
echo '<td class="media-list-name"><a href="' .$verzeichnis.$datei->getFilename(). '" target="_blank">' .$datei->getFilename(). '</a></td>';
echo '<td class="media-list-size">' .ceil( $datei->getSize()/1024 ). ' KB</td>';
echo '<td class="media-list-date">' .date( 'd.m.Y', $datei->getMTime() ). '</td>';
echo "</tr>\n";
}
}
// Tabelle schließen
echo '</table>';
Alles anzeigen
UNd hier die Site, damit das Ganze noch veranschaulicht werden kann:
Skylinerz » Media