Es ist möglich eine Erweiterung dafür zu schreiben, die das Event
'core.page_header_after'
nutzt um die Variable zu überschreiben. Hierfür kannst du eine Extension wie folgt definieren:
Erstelle einen Ordner gn36/hardredirect im ext Verzeichnis
dort hinein die folgenden Verzeichnisse und Dateien
Inhalt der composer.json:
Code: Alles auswählen
{
"name": "gn36/hardredirect",
"type": "phpbb-extension",
"description": "An extension which changes the direction of the default index links.",
"version": "1.0.0",
"time": "2015-01-12",
"license": "GPL-2.0",
"authors": [
{
"name": "Martin Beckmann",
"role": "Developer"
}
],
"require": {
"php": ">=5.3.3"
},
"extra": {
"display-name": "Hard Link change to Forum Index",
"soft-require" : {
"phpbb/phpbb": ">=3.1.2,<3.2.*@dev"
}
}
}
Inhalt der services.yml (alle Einrückungen mit Leerzeichen!)
Code: Alles auswählen
services:
gn36.hardredirect.listener:
class: gn36\hardredirect\event\header
arguments:
- @template
- %core.root_path%
- %core.php_ext%
tags:
- { name: event.listener }
Inhalt der header.php
Code: Alles auswählen
namespace gn36\hardredirect\event;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class header implements EventSubscriberInterface
{
protected $template;
protected $phpEx;
protected $root_path;
__construct(\phpbb\template\template $template, $root_path, $phpEx)
{
$this->template = $template;
$this->root_path = $root_path;
$this->phpEx = $phpEx;
}
static public function getSubscribedEvents()
{
return array(
// page header
'core.page_header_after' => 'change_variables',
);
}
public function change_variables($event)
{
$this->template->assign_vars(array(
//Das ist der Link zurück zum Foren-Index. Einfach append_sid("..."), durch append_sid("neuer_link"), ersetzen, wenn es im Forum bleibt
//Ansonsten durch "neuer_link",
'U_INDEX' => append_sid("{$this->root_path}index.{$this->phpEx}"),
));
}
}
Ich habe das jetzt auf die schnelle nicht getestet, kann sein, dass es so nicht komplett funktioniert. Du musst in der letzten Datei an der angegebenen Stelle deinen Link einsetzen.
Danach sollte die Erweiterung bei dir im Adminbereich auftauchen und sich installieren lassen.