Neues Ausgabefeld in einer Artikelliste

Gesperrt
Karin Dähne
Beiträge: 140
Registriert: Fr 20. Feb 2004, 17:48
Wohnort: Braunschweig
Kontaktdaten:

Neues Ausgabefeld in einer Artikelliste

Beitrag von Karin Dähne »

Folgende Aufgabenstellung:

Artikelliste, egal welcher Art.
Einsatz: Newsliste
Ausgabefeld: "Bereich"
Gesehen bei: http://www.bmbf.de/

Definition Bereich:
"Bereich" ist der Oberbegriff für alle Menuepunkte in der Navigation auf der ersten Ebene.

Arbeitsweise:
Per Linkmodul wird bei der Erstellung des Artikels auf einen anderen Artikel innerhalb des Internetauftrittes verwiesen.
(Dieser Link wird in der Artikelliste als Verlinkung ausgegeben.)

Zur Darstellung des "Bereiches" muß also die oberste Ebene des Kategoriebaumes ausgelesen und als Text dargestellt werden, auf die der Artikel verweist.


Ich bekomm die Abfrage über die verschiedenen Tabellen nicht hin, :cry: kann mir da jemand helfen?


Grüße,
Karin
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

du meinst das einem artikel zugewiesen werden kann ob er zb bildung innovation etc ist ?

kennst du das modul ?
-> http://w3concepts.net/1/1/51/112.html

oder meinst du was anderes...?
*** make your own tools (wishlist :: thx)
Karin Dähne
Beiträge: 140
Registriert: Fr 20. Feb 2004, 17:48
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von Karin Dähne »

Hallo emergence,

(Ich hatte gehofft, Du oder Kummer nimmst Dich der Sache an ;-) )

Das Modul von Kummer hab ich gerade ausprobiert: ist nicht was ich suche.

Zur Verdeutlichung hab ich jetzt mal alles auf den Server geladen:

http://www.ausbildungswerkstatt-bs.de/front_content.php

Dort siehst Du auf der Startseite eine Artikelliste.
Sie wird aus den Artikeln direkt unter "Home" ausgelesen.
Über den Überschriften hab ich jetzt mal zur Verdeutlichung die "Bereiche" reingeschrieben. (Also ohne Rücksicht auf inhaltliche Richtigkeit.)
Sie sollen aber später aus dem Link, der über [ mehr ... ] angesteuert wird ausgelesen werden.

Diese Newsliste soll später aber auch z.B. dazu genutzt werden, auf Kurse aufmerksam zu machen, für die noch Plätze frei sind.
Der Link würde dann aber nicht auf die Startseite "Kursangebot" verweisen, sondern auf eine Unterkategorie von "Kursangebot".
Also z.B. "CNC-Technik".

Über dem Artikel in der Newsliste soll dann aber "Kursangebot" stehen.

Als Notfalllösung kann ich in dem Template für die Inhalte der Newsliste ein Modul einsetzen, wo man die Hauptkategorie auswählt.
Ich hätt es nur gerne eleganter und Dau-gerechter gelöst.
(Alles, was eingestellt werden kann / muß, kann auch zu Fehlern führen ;-) )

Ich hatte an eine Abfrage gedacht, bei der der Link aus der Tabelle 'con_content' (idtype = '8' ; typeid = '1') gelesen, dann die Hauptkategorie dieses Links ermittelt und ausgegeben wird.
Aber genau die bekomm ich nicht hin ;-(


Fällt Dir dazu etwas ein?
Danke schon einmal im Voraus ...

Grüße,
Karin.
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

ähm bin jetzt nicht sicher ob ich das richtig verstanden habe...

1. eine artikelliste listet artikel aus verschiedenen bereichen auf.
2. diese bereiche sollen namentlich aufgelistet werden
3. klickt man auf [mehr] soll man nicht auf den artikel, sondern auf den bereich verlinkt werden... bzw auf einen unterbereich ?

ist mir leider nicht ganz klar...

es gibt mehrere möglichkeiten so etwas zu machen...
eine kategorisierung damit die artikelliste weiss in welchen bereich der artikel sich befindet oder dazugehört könnte man entweder mit der artikelliste von kummer machen oder man bedient sich dem feld artsort des jeweiligen artikels... ab 4.5.2 gibts was neues das man dafür auch hernehmen könnte -> artikelspezifikation...

nun gut wie auch immer
die verlinkung auf entweder den bereich oder unterkategorie automatisch vorzunehmen ist da schon viel problematischer...
*** make your own tools (wishlist :: thx)
Karin Dähne
Beiträge: 140
Registriert: Fr 20. Feb 2004, 17:48
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von Karin Dähne »

Hallo emergence,

Die Artikelliste listet wie immer alle Artikel auf, die (hier) unter "Home" erstellt wurden. Nur die Verlinkung ist modifiziert.

Ich habe in das Template zur Eingabe dieser Artikel ein Linkmodul eingebunden.
In diesem Linkmodul wird eingestellt, auf welchen Artikel man gelangen soll, wenn man auf [ mehr ...] klickt.
(Es wird also nicht, wie üblich auf den Artikel verlinkt, der durch die Artikelliste ausgelesen wird, sondern auf den, der durch das Linkmodul erzeugt wird.)

Jetzt möchte ich diesen Link nutzen, um die Ausgabe eines neuen Features zu erreichen:

Ausgabe der Hauptkategorie, in der der Artikel liegt, auf den verwiesen wird.

Ich hab die Artikel auf der Site http://www.ausbildungswerkstatt-bs.de/front_content.php noch ein wenig verbogen, damit es vielleicht ein wenig klarer wird:

- "Internationales Umweltseminar in Magdeburg"
Der Link verweist auf einen Artikel, der unter "Wir über uns -> Geschichte -> Internationales Umweltseminar in Magdeburg" liegt.

In dem neuen Feature (es ist farblich gleich mit dem Navigationspunkt) soll dann als Text die Hauptkategorie (hier) "Wir über uns" erscheinen.
Ebenso bei den anderen Artikeln.

Also, was ich suche, ist die Auslese der Hauptkategorie (level = 1) zu dem Link, der erzeugt wurde (z.B. level = 3). Und das als Text, wie er in der Tabelle 'con_art_lang' als 'title' ja hinterlegt ist.
Ich brauch aber nicht den 'title' des Links selbst, sondern den in der dazugehörigen aus der Tabelle 'con_cat_tree' 'level' -> '1'.

Ich hoffe, ich hab Dich jetzt nicht ganz verwirrt :oops:
Sonst löcher mich gerne noch einmal ;-)

Grüße,
Karin.
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

Ich habe in das Template zur Eingabe dieser Artikel ein Linkmodul eingebunden.
In diesem Linkmodul wird eingestellt, auf welchen Artikel man gelangen soll, wenn man auf [ mehr ...] klickt.
(Es wird also nicht, wie üblich auf den Artikel verlinkt, der durch die Artikelliste ausgelesen wird, sondern auf den, der durch das Linkmodul erzeugt wird.)
dann fällt obriges, mit automatisch auslesen, sowieso weg...
Also, was ich suche, ist die Auslese der Hauptkategorie (level = 1) zu dem Link, der erzeugt wurde (z.B. level = 3). Und das als Text, wie er in der Tabelle 'con_art_lang' als 'title' ja hinterlegt ist.
Ich brauch aber nicht den 'title' des Links selbst, sondern den in der dazugehörigen aus der Tabelle 'con_cat_tree' 'level' -> '1'.
ach so, warte mal

du setzt wie oben gesagt den link auf den artikel den du haben möchtest...
dann willst du den kategorienamen haben in dem sich der link befindet...

wenn ich mich nicht ganz täusche verlink der con-type cms_link auf die idcatart...

du benötigst also mal die idcat in der sich der artikel befindet...
findet man in der con_cat_art...

$linkid müsstest du ja haben weil du daraus den [mehr] link baust...
das query würde ungefähr so aussehen:
SELECT idcat FROM con_cat_art WHERE idcatart=$linkid

jetzt brauchst du eigentlich nur mehr den namen der kategorie von der idcat die du vorher mit dem query bekommen hast...

würde in etwa so aussehen

Code: Alles auswählen

<?php 
            $sql = "SELECT 
                        b.name as name
                    FROM 
                        ".$cfg["tab"]["cat"]." AS a, 
                        ".$cfg["tab"]["cat_lang"]." AS b 
                    WHERE 
                        a.idclient  = '".$client."' AND 
                        b.idlang    = '".$lang."' AND 
                        a.idcat     = b.idcat AND 
                        a.idcat     = '".$linkid."'"; 

            $db->query($sql); 
            $db->next_record(); 

            $namecat = $db->f("name"); 
            
            echo "kategorie:".$namecat."<br>\n"; 
?>
ich hoffe ich hab dich jetzt richtig verstanden...
*** make your own tools (wishlist :: thx)
Karin Dähne
Beiträge: 140
Registriert: Fr 20. Feb 2004, 17:48
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von Karin Dähne »

emergence hat geschrieben:ich hoffe ich hab dich jetzt richtig verstanden...
fast!!! ;-)

Ich hab folegenden Code eingebaut:

Code: Alles auswählen

    $sql_linkid =
    "SELECT * FROM
    ".$cfg["tab"]["content"]."
    WHERE idartlang = '$value'
    AND idtype = '6'
    AND typeid = '1'
    ";

    $db->query($sql_linkid);
    $db->next_record();

    $linkid = urldecode($db->f("value"));

  $sql = "SELECT 
         b.name as name 
     FROM
         ".$cfg["tab"]["cat"]." AS a,
         ".$cfg["tab"]["cat_lang"]." AS b
     WHERE
         a.idclient  = '".$client."' AND
         b.idlang    = '".$lang."' AND
         a.idcat     = b.idcat AND
         a.idcat     = '".$linkid."'";

            $db->query($sql); 
            $db->next_record(); 

            $namecat = $db->f("name"); 
            
            echo "kategorie:".$namecat."<br>\n";
Das Ergebnis ist
a) der falsche Kategoriename (kann/wird aber an meiner fehlerhaften Abfrage liegen. Ich hab es aber nicht weiter verfolgt, da Fall "b")
b) viel wichtiger: nicht die richtige Ebene.

Ich brauche nicht den Kategorienamen, wo der Artikel genau liegt.
Es soll angezeigt werden, aus welchem Bereich die News ist.
Also z.B. "Wir über uns", "Kursangebot", "Projekte", "Stimmen", "Jobbörse".
(Die Hauptmenuepunkte)

Ich hab's aber trotzdem eingebaut. Du siehst jetzt auf der Seite:

kategorie: XXX (die ausgelesene Kategorie)
| XXX (Der Name, der da stehen sollte)

http://www.ausbildungswerkstatt-bs.de/front_content.php

Ich denke, man muß noch die 'Elternkategorie' oder so ermitteln. (Bis man eben auf 'level = 1' ist.)

Magst Du noch dran langdenken? :oops:

Grüße,
Karin.
kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer »

reicht es nicht aus, wenn du die automatische weiterleitung verwendest und eine ganz normale artikelliste?

da hast du dann folgendes: in der artikelliste wird der artikel angezeigt, aber wenn man auf den link 'mehr' klickt, gelangt man nicht zum demjenigen artikel, sondern zu dem, auf den weitergeleitet wird.

gruss,
andreas
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)
Karin Dähne
Beiträge: 140
Registriert: Fr 20. Feb 2004, 17:48
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von Karin Dähne »

hallo kummer,

es geht mir nicht um die Verlinkung. Das klappt hervorragend.
Ich hab die Artikelliste bei mir um die Funktion erweitert, das man auch (zusätzlich) zu einem anderen Artikel verlinken kann.
Eine Weiterleitung kam für mich aus mehreren Gründen nicht in Betracht:
Zum Einen ist es nicht besonders Dau-gerecht in der Anwendung (in meinen Augen) und, was für mich gravierender war: eine interne Weiterleitung ist nicht besonders barrierefrei nach meiner Information.

Die Aufgabenstellung ist hier auch nicht, einen Link zu erzeugen, oder ihn auszulesen. (Das funktioniert hervorragend)

Was ich brauche, ist der Name des Hauptnavigationspunktes, in dem der eigentliche Artikel liegt.
Der läßt sich aber nicht so einfach auslesen.

Ich versuch es noch einmal anders:
Nehmen wir z.B. auf der Seite http://www.ausbildungswerkstatt-bs.de/f ... hp?idcat=4 den Artikel: "Internationales Umweltseminar in Magdeburg":

Der Link (erreichbar über [ mehr ... ]) ist eingestellt auf:
Wir über uns -> Geschichte -> 2004
DB-Eintrag in der Tabelle 'con_content':
idcontent: 294
idartlang: 62
idtype: 6
typeid: 1
value: 67

Was ich über dem Artikel als "Bereich" ermittelt ausgeben möchte, ist der Name des Hauptnavigationspunktes "Wir über uns" in welchem der Artikel in einer Unterkategorie liegt.

Dazu gehörige DB-Einträge:
DB-Eintrag in der Tabelle 'con_content':
idcontent: 2
idartlang: 2

DB-Eintrag in der Tabelle 'con_art_lang':
idartlang: 2
idart: 2
idlang: 1
idtplcfg: 7
title: Home

DB-Eintrag in der Tabelle 'con_cat_art':
idcatart: 2
idcat: 4
idart: 2

DB-Eintrag in der Tabelle 'con_cat_tree':
idcat: 4
level: 1


Ich hab es jetzt mal auf dem Server entsprechend hingefriemelt ...
In der Hoffnung, jetzt verdeutlicht zu haben, was ich suche :oops:

Grüße,
karin.
Gesperrt