Eltern-Kategorie-Thumbnail OHNE direkte Alben? Eltern-Kategorie-Thumbnail OHNE direkte Alben?
 

News:

cpg1.5.48 Security release - upgrade mandatory!
The Coppermine development team is releasing a security update for Coppermine in order to counter a recently discovered vulnerability. It is important that all users who run version cpg1.5.46 or older update to this latest version as soon as possible.
[more]

Main Menu

Eltern-Kategorie-Thumbnail OHNE direkte Alben?

Started by forme, November 28, 2008, 09:09:03 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

forme

Hallo zusammen,

mach nun einen neuen Thread auf, da der alte Thread über diese Thema geschlossen wurde und hoffe es kann geholfen werden ;)

Wie in einem andern Thread bereits erläutert, ist meine Galerie so aufgebaut:

-Kategorie
---Subkat 1
---------Album 1
---------Album 2
---Subkat 2
---------Album 1
-Kategorie
---Subkat 1
---------Album 1
---------Album 2
---------Album 3
---------Album 4
-kategorie....

also OHNE Alben direkt in der Hauptkategorie, so dass ich dort für diese im Cat-Manager KEIN Thumbnail auswählen kann :(
Ich weiß, mit bbcode könnte man dort ein Bild einfügen - ist aber nicht das optische Ergebnis wie ich es möchte, soll eben so aussehen wie bei den Sub-Kats mit dem Thumb davor.

Wie ist das nun zu lösen? Geht das überhaupt? Das mit dem manuellen Einfügen per if/else im php-Code ist für mich wegen der Zwei-Spalten-Kategorie-Anzeige nicht so einfach umzusetzen - mir wärs halt mit normalem Kat-Thumbnail lieber.

Ein Post im alten Thread:

QuoteQuote from: Sigi44 on August 24, 2006
QuoteNein, das ist nicht möglich: Kategorie-Thumbnails müssen immer aus Alben entnommen werden, die direkt innerhalb der jeweiligen Kategorie liegen.

Leider stimmt das nicht. Das Kategorie-Thumbnail kann liegen, wo immer es sich befindet (natürlich nur, wenn es nicht "hotlink-protected" ist.

....

Sigi


besagt, dass das angeblich auch anders möglich wäre ... nur wie?

habe mir nun erstmal so beholfen, dass ich ein Album anlege, in dem ein Weblink zu finden ist (z.B. zur Band), dort ein Bild eingefügt, dass ich dann eben für die Eltern-Kategorie auswählen kann - aber die Lösung ist nicht perfekt und vor allem wird das Bild verzerrt ... Meine Thumbs sind 65x65 groß (feste Größe), dort wird es dann mit 65x49 skaliert - warum auch immer.

Link gibt es nach wie vor keinen - noch nicht! - da nur auf Home-Server installiert. Screenshot kann ich hier auf der Arbeit leider nun auch keinen machen.

Danke und viele Grüße,

forme


Αndré

Quote from: eenemeenemuu on November 27, 2008, 02:15:01 PM
Tip: Vergleiche die hier veröffentlichte Funktion theme_display_cat_list() mit der, aus themes/sample/theme.php. Ein geeignetes Programm dafür ist z.B. WinMerge.
Am besten einfach mal ausprobieren ;)

forme

jajaja da bin ich ja dran
;D :-* (nur nicht ganz so schnell ...)

ABER ich dachte, das wäre nur für diese if / else hinzufügen der Thumbs? lag ich da wohl falsch und ist das generell dann mit dieser Lösung für das hinzufügen?

Αndré

        if (!isset($category['cat_thumb'])) { $category['cat_thumb'] = ''; }
        if ($category['cat_thumb'] == '' && $category[0] >= 2002 && $category[0] >= 2020) {
          $category['cat_thumb'] = 'pfad/zu/deinen/kategorie-thumbnails/'.$category[0].'jpg';
        }

Der Code (mehr Modifikationen sind es ja eigentlich nicht) macht folgendes: wenn kein Kategorie-Thumbnail gesetzt ist, wird eins aus einem definiertem Ordner mit dem Kategorienamen genommen.

Den Beitrag von Sigi kannst du getrost ignorieren, da er sich nicht mit der Frage beschäftigt.

Den Code musst du dann ggf. auch noch anpassen, wenn es sich bei den Kategorien nicht um Jahreszahlen handelt.

forme

Hallo eenemeenemuu,

erstmal vielen lieben Dank für deine Hilfe - aber ich glaub wir reden grad von zwei verschiedenen Sachen ;)

Quote from: eenemeenemuu on November 28, 2008, 09:24:18 AM
        if (!isset($category['cat_thumb'])) { $category['cat_thumb'] = ''; }
        if ($category['cat_thumb'] == '' && $category[0] >= 2002 && $category[0] >= 2020) {
          $category['cat_thumb'] = 'pfad/zu/deinen/kategorie-thumbnails/'.$category[0].'jpg';
        }

Der Code (mehr Modifikationen sind es ja eigentlich nicht) macht folgendes: wenn kein Kategorie-Thumbnail gesetzt ist, wird eins aus einem definiertem Ordner mit dem Kategorienamen genommen.

ich WILL ja ein Kategorie-Thumbnail setzen - ABER ich hab keine Auswahl von Thumbnails, da ich ja NUR Sub-Kategorien in der Eltern-Kategorie und keine Alben dort habe :-( 

Quote from: eenemeenemuu on November 28, 2008, 09:24:18 AM
Den Beitrag von Sigi kannst du getrost ignorieren, da er sich nicht mit der Frage beschäftigt.

deshalb war der Beitrag von Sigi44 für mich ja gerade interessant WIE es diese Möglichkeit gibt, einer Eltern-Kategorie Thumbs zuzuweisen, die sich z.B. in Sub-Kategorien befinden...  WENN dies denn möglich ist.

Also die Möglichkeit der Code-Modifizierung für "manuelle Thumbs" falls nichts zugewiesen ist, das wäre erst die letzte Möglichkeit für mich, lieber hätte ich eine Auswahlmöglichkeit in der Eltern-Kategorie für Thumbs (ohne vorhandene Alben)

args ist das alles kompliziert...

Αndré

Ich möchte mich nicht mit den Nachwirkungen von Sigis (oft falschen) Aussagen rumplagen. Sicher ist es irgendwie möglich. Ich hab jetzt aber keine Zeit um Code-Modifikationen zu basteln, die das gewünschte Feature bereitstellen.
Joachim hat eine (meiner Meinung nach relativ gut zu verwendende) Lösung gebastelt. Wenn dir das nicht reicht, musst du wahrscheinlich selbst am Code Hand anlegen.

forme

alles klar ;)  dann hab ich wohl Pech gehabt :(

der Code von Joachim ist zwar klasse, aber bis ich das mit meinen wenigen php-Kenntnissen in mein Theme eingebastelt hab (ist ja schon wegen zweispaltigem Layout modifiziert) das wird nix bzw nach 3x Weihnachten  ;D

dann muss ich ma gucken wie ich das hinkrieg außer es hat noch jemand ne "schnelle Idee"

LG, forme

Αndré

Lies dir das doch bitte nochmal genau durch: http://forum.coppermine-gallery.net/index.php/topic,32937.msg153646.html#msg153646

Wenn die Funktion theme_display_cat_list() schon in deiner theme.php existiert, musst du einfach nur 1 (in Worten: eine!) Zeile ersetzen. Ansonsten musst einfach nur die gesamte Funktion die Joachim dort geschrieben hat in deine theme.php kopieren.
Die einzigen Fähigkeiten die du dazu brauchst sind "Suchen" und "Copy & Paste".

forme

na also MEINE theme_display_cat_list() ist KOMPLETT anders irgendwie zu der originalen bzw. zu der von Joachim - hab das mit dem von dir vorgeschlagenen Programm mal geprüft.

Das ist ja mein Problem :-\ wäre es nur 1 Zeile wärs kein Thema....  aber ich werds mir heut abend und am WE nochmal in Ruhe reinziehen, vielleicht krieg ichs doch noch hin irgendwie.

Αndré

Es IST nur 1 Zeile!

Quote from: Joachim Müller on June 22, 2006, 09:47:55 AM
ersetze        if (!isset($category['cat_thumb'])) { $category['cat_thumb'] = ''; }mit        if (!isset($category['cat_thumb'])) { $category['cat_thumb'] = ''; }
        if ($category['cat_thumb'] == '' && $category[0] >= 2002 && $category[0] >= 2020) {
          $category['cat_thumb'] = 'pfad/zu/deinen/kategorie-thumbnails/'.$category[0].'jpg';
        }


forme

@ eenemeenemuu
ich glaub dir das durchaus, dass es wirlkich nur EINE ZEILE IST ... ABER - hier guck mein Code des betreffenden function-Bereichs hat dies SO nicht  :-\  deshalb mein Problem und die Suche nach anderweitigen Lösung, weil ich keinen extra bemühen will (sofern er nicht freiwillig es tut) dies da umzubasteln.

ODER steh ich komplett aufm Schlauch und es ist wirklich ganz einfach?

function theme_display_cat_list ($breadcrumb, &$cat_data, $statistics)
{
global $template_cat_list, $lang_cat_list;

starttable('100%');

if (count($cat_data) > 0) {
$template = template_extract_block($template_cat_list, 'header');
$params = array('{CATEGORY}' => $lang_cat_list['category'],
'{ALBUMS}' => $lang_cat_list['albums'],
'{PICTURES}' => $lang_cat_list['pictures'],
);
echo template_eval($template, $params);
}

$template_noabl = template_extract_block($template_cat_list, 'catrow_noalb');
$template = template_extract_block($template_cat_list, 'catrow');
$template_blank = template_extract_block($template_cat_list, 'catrow_blank');

$count=0;
$columnCount=2;
echo "<tr>";   
   
foreach($cat_data as $category) {
$count++;   
if (count($category) == 3) {
if ($count%$columnCount==0) {
$params = array('{DEBUG}' => "");
echo template_eval($template_blank, $params);
}
$params = array('{CAT_TITLE}' => $category[0],
'{CAT_THUMB}' => $category['cat_thumb'],
'{CAT_DESC}' => $category[1],
'{DEBUG}' => ""
);
$count=0;
echo template_eval($template_noabl, $params);
} else {
$params = array('{CAT_TITLE}' => $category[0],
'{CAT_THUMB}' => $category['cat_thumb'],
'{CAT_DESC}' => $category[1],
'{CAT_ALBUMS}' => $category['cat_albums'],
'{ALB_COUNT}' => $category[2],
'{PIC_COUNT}' => $category[3],
'{DEBUG}' => ""
);
echo template_eval($template, $params);
}
if ($count%$columnCount==0) {
echo "</tr> <tr>";
}
}

echo "</tr>";
    if ($statistics && count($cat_data) > 0) {
        $template = template_extract_block($template_cat_list, 'footer');
        $params = array('{STATISTICS}' => $statistics);
        echo template_eval($template, $params);
    }
    endtable();

    if (count($cat_data) > 0)
        echo template_extract_block($template_cat_list, 'spacer');
}


Αndré

Bei dir muss
        if (!isset($category['cat_thumb'])) { $category['cat_thumb'] = ''; }
        if ($category['cat_thumb'] == '' && $category[0] >= 2002 && $category[0] >= 2020) {
          $category['cat_thumb'] = 'pfad/zu/deinen/kategorie-thumbnails/'.$category[0].'jpg';
        }

vor
if (count($category) == 3) {
eingefügt werden. Danach die Abfrage dann natürlich noch entsprechend anpassen.

forme

alles klar - vielen Dank! War ne schwere Geburt  :-\ sorry für den Aufwand.

Werde ich dann mal ausprobieren wie das klappt.