[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Sprachwähler Prüfung ob Artikel in anderer Sprache verfügb. - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Benutzeravatar
joachim123
Beiträge: 73
Registriert: 5. Feb 2007, 21:41
Wohnort: München
Kontaktdaten: Website

Sprachwähler Prüfung ob Artikel in anderer Sprache verfügb.

16. Jun 2009, 19:25

hi,

für eine mehrsprachige Seite, die möglicherweise manche Kategorien oder Artikel nur in einer Sprache anbietet, möchte ich einen Sprachwähler bauen, der ebendies berücksichtigt (Den Weg, 2 verschiedene Bäume aufzubauen wollte ich nicht gehen).

Nachdem isOnline() nur für Kategorien existiert wäre mein Ansatz für Artikel etwa sowas;
foreach ($REX["CLANG"] as $id => $clang):
$art = new rex_article();
$art->setArticleId($this->getArticleId());
$art->setClang($id);
if (!$art->getArticle()) continue;
...

das funktioniert auch, dennoch wollte ich fragen ob dies der optimale Weg ist oder ob ich eventuell Methoden übersehen habe.

Danke und Grüsse, Joachim
am Ende wird alles gut.

Benutzeravatar
Gregor.Harlan
Entwickler
Beiträge: 1130
Registriert: 4. Jun 2007, 10:35
Wohnort: Frankfurt am Main

16. Jun 2009, 19:57

Hi Joachim,

isOnline() existiert auch für Artikel!

Gruß, Gregor

Benutzeravatar
joachim123
Beiträge: 73
Registriert: 5. Feb 2007, 21:41
Wohnort: München
Kontaktdaten: Website

16. Jun 2009, 20:22

hi Gregor,

arrgs, grade gemerkt, zumindestens wenn ich es so mache:
$article = OOArticle::getArticleById($this->getArticleId(), $clang);
if (!$article->isOnline()) continue;

Danke und Grüsse, Joachim
am Ende wird alles gut.

lci
Beiträge: 239
Registriert: 18. Aug 2006, 10:47

Re: Sprachwähler Prüfung ob Artikel in anderer Sprache verfü

13. Jun 2011, 09:53

Hallo Joachim,

hast Du für das Problem eine gute Lösung gefunden?
Stehe nämlich auch grade vor der Aufgabe einen Sprachwähler einzubauen, der für jeden Artikel nur die Sprachen anzeigt in denen dieser auch vorhanden ist...

Tschuess & Viele Gruesse
P.

Benutzeravatar
svenalbert
Beiträge: 1308
Registriert: 24. Nov 2005, 17:21
Wohnort: Clausthal-Zellerfeld / lower saxony
Kontaktdaten: ICQ Website

Re: Sprachwähler Prüfung ob Artikel in anderer Sprache verfü

21. Okt 2013, 20:06

Ich weiß, hornbeinalter Thread, aber ich stand gerade auch vor dem Problem und die Ansätze hier haben mir zu dem nachfolgenden Stückchen Code verholfen. Ich dachte, ich teile ihn einfach mal mit euch.

Code: Alles auswählen

    echo '<ul id="lang_navi">';
    foreach ($REX["CLANG"] as $id => $clang) {
        if ($id != $REX['CUR_CLANG']) {
            $article = OOArticle::getArticleById($this->getArticleId(), $id); 
            if ($article->isOnline(true)) {
                echo '<li><a href="'.  rex_getUrl($this->getArticleId(), $id) .'">'.$id.'</a></li>';
            }
        }
    }
    echo '</ul>';
Hier ist zum einen die Onlineprüfung drin, zum anderen wird die derzeit aktuelle Sprache nicht mit berücksichtigt.
Der Listeninhalt ist derzeit nur die ID, aber das kann sicherlich jeder nach seinem Gusto anpassen.
Das $id im Linktext gegen $clang ausgetauscht ergibt z.B. eine Navigation mit den, in der Sprachverwaltung vereinbarten, Sprachbezeichnungen.

Viele Grüße,
Sven

Zurück zu „Allgemeines [R4]“