Kategorie-Thumbnail Kategorie-Thumbnail
 

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

Kategorie-Thumbnail

Started by grazer, June 21, 2006, 01:09:51 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

grazer

Hallo!

leider habe ich nichts in der Suche gefunden, ich hoffe man kann mir weiterhelfen.

Ich würde gerne Grafiken ide NICHT in irgendeinem Album vorkommen als Kategorie-Thumbnail verwenden.
Ist dies möglich?
Ich habe meine Gallery bzw die Kategorien nach Jahreszahl geordnet.
Das heißt ich möchte Grafiken mit der mit Schriftzug 2001, 2002, 2003 als Thumbnail haben. Logischerweise existieren diese aber in keinem Album bzw möchte ich auch kein eigenes Album dafür öffnen, da es sinnlos wäre, wenn man diese betrachten könnte.

Liebe Grüße

Joachim Müller

Nein, das ist nicht möglich: Kategorie-Thumbnails müssen immer aus Alben entnommen werden, die direkt innerhalb der jeweiligen Kategorie liegen. Wenn Du sowas wirklich brauchst, dann wirst Du wohl nicht um einen etwas aufwendigeren Theme-Hack herumkommen. Dazu wäre es hilfreich, wieviele solcher Kategorien es geben wird und in welcher Geschwindigkeit und Menge neue dazu kommen. Wenn es jedes Jahr nur eine Kategorie ist, dann solte das nicht allzu schwer sein.

grazer

ja also wie gesagt, einmal im Jahr kommt ein Kategorie dazu und derzeit existieren 2002 - 2006, also 5 Kategorien
gibt es hierfür schon irgendwo einen hack bzw. eine anleitung?

liebe grüße

edit: übrigens vielen dank für deine hilfe, ich bewundere immer wieder leute die sich tag für tag so aktiv wie du mit newbies wie mich herumkämpfen

Joachim Müller

Wenn's nur jedes Jahr eine Kategorie gibt, dann sollte das recht einfach zu bewerkstelligen sein. Bearbeite themes/dein_theme/theme.php, findfunction theme_display_cat_list($breadcrumb, &$cat_data, $statistics)Wenn diese Funktion existiert, dann 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';
        }


Wenn function theme_display_cat_list($breadcrumb, &$cat_data, $statistics)nicht in Deinem Theme existiert, dann kopierefunction theme_display_cat_list($breadcrumb, &$cat_data, $statistics)
{
    global $template_cat_list, $lang_cat_list;
    if (count($cat_data) > 0) {
        starttable('100%');
        $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');
    foreach($cat_data as $category) {
        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';
        }
        if (count($category) == 3) {
            $params = array('{CAT_TITLE}' => $category[0],
                    '{CAT_THUMB}' => $category['cat_thumb'],
                '{CAT_DESC}' => $category[1]
                );
            echo template_eval($template_noabl, $params);
        } elseif (isset($category['cat_albums']) && ($category['cat_albums'] != '')) {
            $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],
                );
            echo template_eval($template, $params);
        } else {
            $params = array('{CAT_TITLE}' => $category[0],
                '{CAT_THUMB}' => $category['cat_thumb'],
                '{CAT_DESC}' => $category[1],
                '{CAT_ALBUMS}' => '',
                '{ALB_COUNT}' => $category[2],
                '{PIC_COUNT}' => $category[3],
                );
            echo template_eval($template, $params);
        }
    }

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


    if (count($cat_data) > 0)
          endtable();
        echo template_extract_block($template_cat_list, 'spacer');
}
in eine neue Zeile vor?>

In beiden Fällen musst Du natürlich dafür sorgen, dass die geplanten Kategorie-Thumbnails existieren und benannt sind nach dem Schema 2002.jpg, 2003.jpg etc.
In beiden Fällen musst Du natürlich$category['cat_thumb'] = 'pfad/zu/deinen/kategorie-thumbnails/'.$category[0].'jpg';entsprechend abändern.

Habe den Code nicht getestet, sondern aus der hohlen Hand gehackt, bitte Feedback.

Sigi44

Quote from: GauGau on June 21, 2006, 05:35:48 PM
Nein, 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.

Nachzusehen unter http://coppermine-galerie.de/cpg/galerie-2/index.php

Siehe hier unter Kategorie 3

Als Kategorie-Thumbnail wurde hier das Logo dieser Seite (coppermine-gallery.net) eingebunden.

Das wird natürlich wieder entfernt. Ich lasse es jetzt mal bis morgen abend drin, wenn der Chef einverstanden ist.

Sigi




forme

Quote from: Sigi44 on August 24, 2006, 12:05:06 AM
Leider stimmt das nicht. Das Kategorie-Thumbnail kann liegen, wo immer es sich befindet (natürlich nur, wenn es nicht "hotlink-protected" ist.
....
Sigi


Hallo,

muss diesen alten Thread jetzt mal heraus kramen...       meine Galerie ist 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 zwar gut und schön, aber meine function theme_display_cat_list ist schon ganz anders aufgebaut (weil zweispaltiges Layout) und ich komm da nicht wirklich mit klar (mit Änderungen für einzelne Kategorien (bleiben immer so bestehen dann):

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');
}


Danke für eure Hilfe!

Αndré

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.

Joachim Müller

@forme:
Sperre diesen Thread. Du hast Deinen eigenen Thread.