PHP-Fusion-GERMANY / PHP-Fusion

Vom deutschen Team weiterentwickelter Fork
http://phpfusion-deutschland.de
6 stars 3 forks source link

SEF Links #2

Open Webmeteor opened 8 years ago

Webmeteor commented 8 years ago

Nach welcher Art?

  1. viewpage.php?pageid=1&pagename
  2. viewpage/1/pagename
  3. viewpage_1_pagename
  4. ist relativ einfach zu realisieren, habe aber noch keine Erfahrungswerte
  5. so wie in allen anderen Systemen auch, Nachteil ist, das für CSS und javascript hinzubekommen, genauso das Forum (hatten damals da beim SEO-Fusion richtig Probleme bekommen)
  6. auch relativ einfach zu realisieren. Produziert schon einen deutlichen Ranking Schub.

Und muss zwingend ein Fallback für mod_rewrite off da sein? Ich denke es gibt mittlerweile keinen Hoster mehr, der mod_rewrite nicht zur Verfügung stellt.

Webmeteor commented 7 years ago

Es nutzt ja keinem Entwickler, besonders den Anfängern etwas eine komplexe regex auszutüfteln, damit die Url's in beide Richtungen per PHP umgeschrieben werden. Belastet zudem auch den Server etwas mehr.

Man könnte das ganze auch noch per Datenbank steuern. Man hätte dann dort den eindeutigen Permalink drin stehen. Nur halte ich eine solche Lösung für noch weniger praktikabel.

Meine Lösung finde ich nicht schlecht. Und da du das PHPDoc einführen möchtest, ist doch eine Dokumentation im Script vorhanden.


Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft. https://www.avast.com/antivirus

iPaat commented 7 years ago

Okay, versuchen wir es. Vielleicht ist das System besser als ich es momentan erkenne. Wenn du magst, kannst du ja einen PR aufmachen und schon mal anfangen alles wesentliche einzubauen. Wenn die ersten Elemente umgeschrieben sind, schaue ich mir dort das Vorgehen ab und unterstütze dich/euch.

Webmeteor commented 7 years ago

So würde dann die index.php aussehen:

`require_once "maincore.php"; /**

// we use it for .css, .js and other html links /**

// load the page we want if(file_exists($params[0].'php')) require_once $params[0].'php'; elseif (file_exists(INFUIONS.$params[0].'/'.$params[1].'php')) require_once INFUIONS.$params[0].'/'.$params[1].'php'; elseif ($params[0]=='index') require_once $settings['opening_page']; /**

Wobei die neue Konstante ja eher in die maincore.php gehört. Dort müsste dann auch die Funktion für Entwickler rein, die die Links generiert. So haben wir jetzt 1 feststehenden Wert für die Coredateien und 2 feststehende Werte für die Entwickler von Infusionen. Beim Rest ist dann jeder frei, wie was belegen will.

Hat jetzt den Vorteil, dass man keine extra Rewriter schreiben muss. der Rest kann dann in den einzelnen Dateien ganz am Anfang deklariert werden.

Ob es mit der Konstanten da klappt, habe ich noch nicht getestet. Der Codeschnippsel stammt aus einem anderen CMS.

und hier noch eine Änderung als Beispiel die viewpage.php `if(!defined(IN_FUSION)) header('location: index.html');

require_once THEMES."templates/header.php"; require_once INCLUDES."comments_include.php"; require_once INCLUDES."ratings_include.php"; include LOCALE.LOCALESET."custom_pages.php";

/**

if (!isset($params[1]) || !isnum($params[1])) { redirect("index.html"); }else{ $_GET['page_id'] = $params[1]; } if (!isset($params[3]) || !isnum($params[3])) { $_GET['rowstart'] = 0; }else{ $_GET['rowstart'] = $params[3]; }`

Bleibt also noch genauso "übersichtlich" wie vorher.

Webmeteor commented 7 years ago

habe jetzt mal ein paar files in den pull request geschoben. sind noch nicht alle zu 100% fertig. Aber so lässtsich ja schonmal erkennen, wie ich es mir so denke. Wenn denn alle mit dieser wohl etwas einfacheren Lösung einverstanden sind, dann mache ich gerne weiter. Lässt sich sicherlich auch noch etwas verfeinern. Getestet ist das ganze bisher auf PHP 5.5 shared Hosting