WBCE CMS – Way Better Content Editing.
You are not logged in.
Pages: 1
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
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
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
Hi @stefanek,
super – ein wertvoller Tipp, vielen Dank!
Habe das Gist entsprechend aktualisiert, falls hier noch jemand Bedarf hat.
Beste Grüße
André
Offline
stefanek
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.)
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
digitalbricks, stefanek
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
Ich habe das Script jetzt auch mal im AOR ergänzt.
https://addons.wbce.org/pages/addons.ph … tem_id=165
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
digitalbricks
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
digitalbricks
Pages: 1