[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REX_TEMPLATE per PHP einbinden? - 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/
Fanello
Beiträge: 336
Registriert: 24. Mai 2006, 14:01
Wohnort: Riedt (Schweiz)

REX_TEMPLATE per PHP einbinden?

25. Sep 2014, 00:23

Liebes Redaxo-Forum

Ich baue meine Redaxo-Seiten jeweils so auf, dass ich die <title> und <meta>-Tags jeweils in ein separates Template einbaue. Dieses Template rufe ich dann z.B. so im Haupttemplate auf:
REX_TEMPLATE[7]
An dieser Stelle wird dann der ganze Code eingebaut, der in eben diesem separaten Template ist. So weit so gut..

Nun muss ich aber eine PHP-Abfrage machen, denn je nach article_id muss ein anderes Meta-Template eingebaut werden. Das mache ich so:

Code: Alles auswählen

<?php
$seite = $this->getValue("article_id");
switch($seite)
{
  case 16:
  $template = "10";
  break;
 
  case 18:
  $template = "11";
  break;
  
  case 19:
  $template = "12";
  break;
  
  case 20:
  $template = "13";
  break;
  
  case 21:
  $template = "14";
  break;
 
  default:
  $template = "9";
  break;
}
?>
REX_TEMPLATE[<?php print $template; ?>]
Das funktioniert nun insofern nicht, als dass es mir zwar z.B. tatsächlich REX_TEMPLATE[11] in den Quelltext schreibt, jedoch diese REX-Funktion nicht ausführt und somit auch nicht den Code einbaut, der sich in diesem separaten Template11 befindet.

Wisst ihr, woran das liegt?

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: REX_TEMPLATE per PHP einbinden?

25. Sep 2014, 07:37

Das funzt so leider nicht. Du kannst aber Templates auch über PHP einbinden, nutze dazu bitte Google oder die Forumssuche.

Und weisst du dass es SEO Addons gibt, die pro Artikel Beschreibung und Keywords anbieten? Siehe DL-Bereich hier auf redaxo.org.

Fanello
Beiträge: 336
Registriert: 24. Mai 2006, 14:01
Wohnort: Riedt (Schweiz)

Re: REX_TEMPLATE per PHP einbinden?

25. Sep 2014, 11:24

vielen Dank für die Antwort. Werde in dem Fall den Weg gehen, das Template via PHP einzubinden.

Ich weiss dass es einige SEO-Addons gibt, hab mir aber nie die Mühe genommen diese mal genauer anzuschauen. Werde es auf jeden Fall nachholen!

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: REX_TEMPLATE per PHP einbinden?

25. Sep 2014, 11:27

Solltest du auf jedenfall machen, sonst hast du auch keine sprechenden Urls. Udn wie gesagt: vermuttlich brauchst du deinen Code überhaupt nicht weil die Funktionalität in den SEO Addons bereits inkludiert ist.

Fanello
Beiträge: 336
Registriert: 24. Mai 2006, 14:01
Wohnort: Riedt (Schweiz)

Re: REX_TEMPLATE per PHP einbinden?

25. Sep 2014, 11:45

Ich habe es jetzt mal "auf die Schnelle" so gelöst (wobei ich den letzten Teil des Codes hier im Forum gefunden habe) und es klappt tipp-top:

Code: Alles auswählen

<?php
$seite = $this->getValue("article_id");
switch($seite)
{
  case 16:
  $templateid = "10";
  break;
 
  case 18:
  $templateid = "11";
  break;
  
  case 19:
  $templateid = "12";
  break;
  
  case 20:
  $templateid = "13";
  break;
  
  case 21:
  $templateid = "14";
  break;
 
  default:
  $templateid = "9";
  break;
}

$Template = new rex_template($templateid);
include $Template->getFile();
?>
Nun kann es mal so laufen und ich kann mir jetzt in Ruhe das SEO AddOn anschauen. :)

Zurück zu „Allgemeines [R4]“