forum.coppermine-gallery.net
Support => Deutsch (German) => Language Specific Support => cpg1.5.x Deutsch (German) => Topic started by: Tankertom on March 15, 2015, 07:09:09 pm
-
Hallo,
in einem bestimmten Album möchte ich die Sortierung a la thumbnails.php?album=toprated&cat=-224
einbauen. Der Hintergrund, ich möchte nur in diesem Album immer das beste bewertest Bild an erster Stelle anzeigen(Wettbewerbsystematik)
VG TT
-
Nada... man kann nicht der Blick des eines bestimmtes Album kontrollieren, und das ist doch nicht möglich auch mit theme.php, weil das Loop in dem Template egal fur alle Alben ist.
-
Theoretisch müsste man "nur" alle Verweise auf das Album durch deinen Link ersetzen. D.h. man würde den Quelltext (via Plugin oder Code-Modifikation) nach
thumbnails.php?album=224
durchsuchen und entsprechend durch
thumbnails.php?album=toprated&cat=-224
ersetzen.
Falls deine Besucher jedoch ein Bild direkt aufrufen (z.B. displayimage.php?pid=123), befinden sie sich automatisch in der normalen Sortierung des Albums, wenn sie zurück/weiter klicken. Solche Links findet man z.B. in den Datei-Informationen und sicherlich auch an anderen Stellen in Coppermine. Kannst du damit leben, oder wäre das ein K.O.-Kriterium für o.g. Lösung?
-
Hallo Andre,
damit kann ich total gut leben, da alle anderen Informationen schon ausgeblendet sind. Es gibt keinen Hinweis mehr auf den Uploader, Dateinamen und Exif Daten, damit die Bilder so bewertet werden können wie es halt mit Bildern geschehen soll.
Dann gehe ich mal auf die Suche nach den ganzen Links und ändere diese ;-)oder kannst du mir die Hauptstellen benennen?
VG
TT
-
Die Links werden dynamisch generiert. Es ist vermutlich deutlich einfacher ein kleines Plugin zu erstellen oder direkt die Funktionen theme_display_album_list und theme_display_album_list_cat in der theme.php-Datei anzupassen. Such dort einfach mal nach
{ALB_LINK_TGT}
Ich vermute du weißt, was zu tun ist ;) Wenn nicht, sag noch mal kurz Bescheid.
-
Hi,
ein Plugin hätte natürlich den charmanten Vorteil das man auch ein "neues" oder "anders" Album nutzen könnte.
{ALB_LINK_TGT}
hätte ich nun nicht gerechnet, das muss ich in meiner theme.php nachpflegen..
VG
-
so geschaft... die Galerie tut was sie tun soll. Nun muss ich aber nochmal auf den aufgeworfenen Punkt von dir zurück kommen.
Falls deine Besucher jedoch ein Bild direkt aufrufen (z.B. displayimage.php?pid=123), befinden sie sich automatisch in der normalen Sortierung des Albums
Wo genau wird das zusammengesetzt? Dann könnte man das Album an der Stelle ja auch "auskommentieren" ???
VG TT
-
Ohne zuviel versprechen zu wollen, wird das vermutlich innerhalb der Funktion "theme_html_img_nav_menu()" festgelegt.
-
hi,
in dieser Funktion bin ich leider nicht fündig geworden.
-
Die Idee war, dass du die Variablen $start_tgt, $prev_tgt, $next_tgt und $end_tgt anpasst (idealerweise dann auch noch die dazugehörigen Variablen mit den Endungen *_title und *_image). Das ist aber bei genauerer Überlegung viel zu aufwändig, stattdessen überprüfen wir lieber beim Seitenaufruf, in welchem Album sich der Benutzer befindet und leiten ihn ggf. mittels Redirect in das Meta-Album um. Ich werde gleich mal versuchen die beste Stelle dafür zu finden und den Mod dann hier veröffentlichen.
-
Füge die Funktion theme_html_img_nav_menu in die theme.php-Datei deines Themes ein, wenn sie dort noch nicht existiert. Suche dann nach
$superCage = Inspekt::makeSuperCage();
und füge darüber folgenden Code ein
if ($album == 224) {
$target = "$CPG_PHP_SELF?album=toprated&cat=-$album&pid={$CURRENT_PIC_DATA['pid']}";
header("Location: $target");
}
So in etwa könnte auch der Code für die thumbnails.php-Ansicht aussehen, nur eben in einer anderen Funktion.
-
So in etwa könnte auch der Code für die thumbnails.php-Ansicht aussehen, nur eben in einer anderen Funktion.
Der Vollständigkeit halber: Füge die Funktion theme_display_thumbnails in die theme.php-Datei deines Themes ein, wenn sie dort noch nicht existiert. Suche dann nach
$superCage = Inspekt::makeSuperCage();
und füge darüber folgenden Code ein
if ($aid == 224) {
$target = "$CPG_PHP_SELF?album=toprated&cat=-$aid";
header("Location: $target");
};
-
danke funktioniert :)