WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

You are not logged in.

#1 04.07.2023 18:02:25

digitalbricks
Member

WBCE Permalinks

Hallo Community,

in einem aktuellen Projekt soll von einer statischen Landigpage (Domain A) auf einzelne Produktseiten einer WBCE-Website (Domain B) verlinkt werden. Die statische Landigpage wird vermutlich nie wieder angefasst aber auf der WBCE-Website wird SEO-Voodoo betrieben und die URLs der verlinkten Produktseiten ändern sich daher von Zeit zu Zeit.

Ich habe also eine Lösung gesucht, um unabhängig von aktuell eingestellten Dateinamen auf die Zielseiten zu verlinken – so dass der Link gültig bleibt wenn aus example.com/krasses-produkt.php zukünftig example.com/krasses-produkt-mit-voll-dufte-keyword.php wird.

Aus WordPress kennt ihr ja vielleicht das Konzept der "Permalinks", bei denen die Post-ID genutzt und auf die finale URL umgeleitet wird. Ich hatte angenommen, dass sowas auch schon mal jemand für WBCE gemacht hätte – habe aber im Forum nichts dazu gefunden (falscher Suchbegriff?). Also habe ich mal eine Lösung geschrieben: WBCE CMS permalinks (GitHub Gist).

Wäre super wenn mal ein "alter WBCE-Hase" (m/w/d) drüberschauen könnte, um zu schauen ob ich an irgendwas Wichtiges nicht gedacht habe.
(Wenns für euch funktioniert, dann natürlich auch gern kopieren und selber nutzen wenn Bedarf besteht.)

Beste Grüße
André

Offline

#2 04.07.2023 22:03:12

stefanek
Developer

Re: WBCE Permalinks

An sich gut und auch eine interessante Idee.

Nur ein Hinweis:
wenn Du die config.php inkludierst steht Dir das Datenbank Objekt $database zur Verfügung und Du brauchst keine Verbindung mehr aufbauen.
(Das liegt daran, da die config.php die initialize.php inkludiert die "alles" initiiert und inkludiert was gebraucht wird.)

Du könntest also diesen markierten Code durch den Folgenden ersetzen:

// query database for given page
$queryPage = "SELECT * FROM `{TP}pages` WHERE `page_id` = {$page_id}";
$data = $database->get_array($queryPage);
if(array_key_exists(0, $data)){	
	$page_info = $data[0]; 
} else {
    sendRedirect($fallback_url);
}

Wobei natürlich Dein Code auch so funktioniert und nicht wirklich einer Anpassung bedarf.
Was die Sicherheit angeht gibt es aus meiner Sicht keine Bedenken.

Schönen Gruß,
Christian

Last edited by stefanek (04.07.2023 22:27:35)


“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale

Offline

#3 04.07.2023 22:28:24

stefanek
Developer

Re: WBCE Permalinks

EDIT: Habe oben noch Code angefügt für den Fall, dass eine ID sich nicht in der DB befindet (wie es in Deinem Code auch der Fall ist).


“Success is the progressive realization of a worthy ideal.” ― Earl Nightingale

Offline

#4 05.07.2023 07:26:33

digitalbricks
Member

Re: WBCE Permalinks

Hi @stefanek,

super – ein wertvoller Tipp, vielen Dank!
Habe das Gist entsprechend aktualisiert, falls hier noch jemand Bedarf hat.

Beste Grüße
André

Offline

Liked by:

stefanek

#5 05.07.2023 15:31:32

florian
Administrator

Re: WBCE Permalinks

Sehr schöne Ergäzung, vielen Dank.
Ich habe das Thema mal in den Module- und Snippets-Bereich verschoben.

(Ein anderer Lösungansatz wäre übrigens (vielleicht) das 404-Modul gewesen, mit dem kann man Weiterleitungen nach dem Schema "Wenn in der URL der nicht gefundenen Seite >abc< vorkommt, leite weiter auf die Seite "xyz" " anlegen.)


Code allein macht nicht glücklich. Jetzt spenden!

Offline

Liked by:

digitalbricks, stefanek

#6 07.07.2023 13:41:39

kleo
Member

Re: WBCE Permalinks

Das Thema Weiterleitungen ist für mich auch interessant.
Momentan muss immer an die .htacces Datei ran, ein Modul für Weiterleitungen wäre meines Erachtens sehr hilfreich.

Offline

#7 22.07.2023 10:15:53

florian
Administrator

Re: WBCE Permalinks

Ich habe das Script jetzt auch mal im AOR ergänzt.
https://addons.wbce.org/pages/addons.ph … tem_id=165


Code allein macht nicht glücklich. Jetzt spenden!

Offline

Liked by:

digitalbricks

#8 22.07.2023 21:11:56

ruebezahl
Member

Re: WBCE Permalinks

grundsätzlich kann man jedes access-file - also die daten im pages verzeichnis - kopieren und an beliebige Stellen verschieben. Ev  pfad zur Config.php anpassen.

Offline

Liked by:

digitalbricks

Board footer

up