[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Interner Link - 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/
sandmaus
Beiträge: 569
Registriert: 27. Apr 2006, 11:26
Wohnort: Dresden
Kontaktdaten: Website

Interner Link

24. Jul 2017, 23:58

Hallo Freunde,

ich nutze die Linkliste aus der Redaxo Demo 5.3 und habe dazu folgende Frage.

Mit diesem Modul habe ich ein paar Links ausgwählt und diese Linkliste gespeichert.
Im Nachgang wurde ein Artikel, welcher in dieser Linkliste verknüpft ist, gelöscht.
Nun erhalte ich eine Fehlermeldung da eben dieser Link nicht mehr exsistiert.

Wie kann ich kontrollieren, ob dieser Link noch in der Struktur vorhanden ist bevor ich rex_getUrl($a) aufrufe.

REX_LINK[id=1 ???=1] oder LINK ID exist

Bei Redaxo 4.7 ist man dann auf einer gewünschten Fehlerseite gekommen.

Vielen Dank für Eure Hilfe.

Grüße Sandmaus

Thomas.Skerbis
Beiträge: 1371
Registriert: 4. Aug 2006, 14:06
Wohnort: Rheinberg
Kontaktdaten: Website Twitter

Re: Interner Link

25. Jul 2017, 09:56

Hi, prüfe ob es sich bei der ID um einen Artikel handelt

Code: Alles auswählen

foreach(explode(',', 'REX_LINKLIST[1]') as $articleId)
{
    $article = rex_article::get($articleId);
  // Wenn ja dann: 
    if ($article)
    {
        $menu[$articleId] = $article->toLink();
    }
}

sandmaus
Beiträge: 569
Registriert: 27. Apr 2006, 11:26
Wohnort: Dresden
Kontaktdaten: Website

Re: Interner Link

25. Jul 2017, 11:06

Danke für Deine Antwort.

genau das ist im übertragenen Sinne auch in diesem Modul:

Code: Alles auswählen

<div class="col-md-3">
	<?php

	if ('REX_LINKLIST[1]' != '') {
		echo '<ul>';
		$linklist = explode(',','REX_LINKLIST[1]');
		foreach ($linklist as $link) {
			$art = rex_article::get($link);
			 
			$class = "";
            if(rex_article::getCurrentId() == $art->getId())
                $class = ' class="active"';
                    
			if (is_object($art)) {
				$art_name = $art->getValue('name');
				echo '<li'.$class.'><a href="'.rex_getUrl($link).'">'.$art_name.'</a></li>';
			}
		}
		echo '</ul>';
	}
	?>
</div>
Nur läuft es auf einen Fehler hinaus, wenn im Nachgang ein Redaktuer einen dieser Menüpunkte löscht.

Danke und grüße von mir

Thomas.Skerbis
Beiträge: 1371
Registriert: 4. Aug 2006, 14:06
Wohnort: Rheinberg
Kontaktdaten: Website Twitter

Re: Interner Link

25. Jul 2017, 15:21

Du arbeitest mit dem Objekt, bevor du festgestellt hast ob es eins ist.

if ($art) fehlt..


Hier ein fertiges Beispiel:
https://github.com/FriendsOfREDAXO/tric ... nkliste.md

Zurück zu „Module/Aktionen [R5]“