Forum Link ohne index.php und Meta Tags

Fragen rund um die Installation, Administration und Benutzung von phpBB.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version angeben
Antworten
Everlong
Mitglied
Beiträge: 77
Registriert: 03.10.2003 03:49
Wohnort: Berlin

Forum Link ohne index.php und Meta Tags

Beitrag von Everlong »

Hallo,

wo genau müßte ich etwas ändern wenn ich keinen Link auf /index.php haben möchte sonder nur domain.tld/ also beim Klick auf "Forenübersicht" oder auf den Banner.

Gibt es die Möglichkeit die Meta Tags anzupassen mit den Daten aus dem jeweiligen Thread oder habe ich eine Extension dafür übersehen?


Danke
Gruss

Everlong
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: Forum Link ohne index.php und Meta Tags

Beitrag von gn#36 »

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

Code: Alles auswählen

composer.json
config/
    services.yml
event/
   header.php
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.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Everlong
Mitglied
Beiträge: 77
Registriert: 03.10.2003 03:49
Wohnort: Berlin

Re: Forum Link ohne index.php und Meta Tags

Beitrag von Everlong »

Hallo,

danke für die Mühe, ist schon ein Ordentlicher aufwand um den Link umzuschreiben, bringt einem aber die Extensions wieder näher zu verwenden, klappt auch ganz gut. :-)

Die Meta Tags Frage ist dann eher etwas komplexer?


Viele Grüße,
Gruss

Everlong
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: Forum Link ohne index.php und Meta Tags

Beitrag von gn#36 »

Kommt darauf an. Willst du vorhandene Tags umschreiben, oder zusätzliche ergänzen? Wenn du vorhandenes ersetzen willst müssten wir erst mal schauen wo die Tags herkommen.

Zusätzliche ergänzen sollte recht einfach machbar sein, indem du in die Extension einen zusätzlichen Ordner styles/prosilver/template/event/ legst und dort eine Datei namens overall_header_head_append.html. In die steckst du den HTML Code für den Meta Tag, den du hinzufügen willst. Danach sollte ein mal den Cache löschen reichen, ggf. musst du ein mal die Extension deaktivieren und wieder aktivieren.

Falls du einen nicht auf prosilver basierenden Style verwendest, solltest du für den die Datei auch anlegen. Bei Meta Tags kann die natürlich identisch sein.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Everlong
Mitglied
Beiträge: 77
Registriert: 03.10.2003 03:49
Wohnort: Berlin

Re: Forum Link ohne index.php und Meta Tags

Beitrag von Everlong »

Klappt perfekt, danke!
Gruss

Everlong
Antworten

Zurück zu „Support-Forum“