WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

Du bist nicht angemeldet.

#1 03.03.2020 19:57:58

rheo
Mitglied

Topics und GlobalStrings Manager

Liebe ExpertInnen

Ich arbeite mit umfangreichen Topics-Seiten und verwende dabei auch GlobalStrings; konkret in den Feldern Kurzbeschreibung sowie Kurz, Lang und Extra. Das funktioniert grundsätzlich prima.

Was allerdings leider nicht klappt ist die Übernahme der GlobalStrings-Inhalte in die Meta-Description und die Meta-Keywords, welche ja von Topics automatisch generiert werden. Dort erscheinen stattdessen die Platzhalter [[string?name=xyz]].

Gibt es dafür eine Lösung ?

Vielen Dank im Voraus !
rheo

Online

#2 03.03.2020 22:23:06

boeseroeser
Gast

Re: Topics und GlobalStrings Manager

Meta-Description und die Meta-Keyword kommen über SImplePageHead da rein.
Ich könnte mir vorstellen, dass die Zeichen [ und ] anders codiert werden und daher nicht als Droplets erkannt werden. Das könnte beim Speichern eines Topics passieren oder irgendwo in weiterer Folge. Das kann ich momentan nicht beantworten.

#3 04.03.2020 08:53:42

florian
Administrator

Re: Topics und GlobalStrings Manager

Es stimmt, dass es daran liegt, dass Description und Keywords von simplepagehead generiert werden. Das hat aber nichts mit der Syntax zu tun (glaube ich jedenfalls), sondern mit dem Zeitpunkt des Aufrufs, d.h. Simplepagehead wird _vor_ dem Outputfilter aufgerufen, der sonst dafür zuständig wäre, die Dropletaufrufe durch deren jeweiligen Inhalt zu ersetzen.

Es geht mittels eines Workarounds.

1) Gehe auf Admin-Tools > Droplets und lege ein neues Droplet replacemeta an.
2) Füge in dieses den nachfolgenden Code ein.

if ($meta=='keywords') {
$rv ='<!--(REPLACE) META KEY -->';
$rv .='<meta name="keywords"  content="'.$k.'"/>';
$rv .='<!--(END)-->';
}
if ($meta=='description') {
$rv ='<!--(REPLACE) META DESC -->';
$rv .='<meta name="description" content="'.$d.'"/>';
$rv .='<!--(END)-->';
}
return $rv;

3) Speichere das Droplet und gehe in die Topics-Optionen.
4) Füge im Feld Thema > Fußzeile folgenden Code ein.

[[replacemeta?meta=keywords&k=[META_KEYWORDS]&foo=bar]]
[[replacemeta?meta=description&d=[META_DESCRIPTION]&foo=bar]]

5) Speichere die Änderungen.

Beitrag geändert von florian (05.03.2020 09:15:40)


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#4 05.03.2020 08:58:08

rheo
Mitglied

Re: Topics und GlobalStrings Manager

Vielen Dank für die schnelle Antwort !

Das funktioniert bei mir aber leider nicht; die Themen-Seiten bleiben nach dem Einbau des obigen Codes leer.
Liegt es womöglich daran, dass im Feld Thema > Fusszeile noch andere Einträge (u.a. Topics-Variablen) stehen ?

Abgesehen davon, weil es nichts am Ergebnis ändert; braucht es nach

[META_KEYWORDS]&foo=bar]]]

drei eckige Schlussklammern ] ?

Online

#5 05.03.2020 09:14:56

florian
Administrator

Re: Topics und GlobalStrings Manager

Mit den 3 Klammern hast Du natürlich recht.
Ich habe aber sowieso zu kompliziert gedacht. Du brauchst gar kein Droplet.
Es reicht, wenn Du in der Fußzeile einfach nur einfügst:

<!--(REPLACE) META KEY -->
<meta name="keywords"  content="[META_KEYWORDS]"/>
<!--(END)-->

<!--(REPLACE) META DESC -->
<meta name="description" content="[META_DESCRIPTION]"/>
<!--(END)-->

Code allein macht nicht glücklich. Jetzt spenden!

Offline

#6 05.03.2020 09:40:16

rheo
Mitglied

Re: Topics und GlobalStrings Manager

Das führt bei mir leider zum gleichen Fehler, also einer komplett leeren Themen-Seite.

Die Felder [META_KEYWORDS] und [META_DESCRIPTION] von Topics sind ja unten auf jeder Themenseite sichtbar. Diese enthalten momentan die unaufgelösten GlobalStrings [[string?name=xyz]].
Wenn ich es richtig verstehe, werden dann aus diesen Feldern von Topics direkt die META-Infos erzeugt. Der Inhalt der GlobalStrings müsste also vorher umgewandelt werden !?

Online

#7 05.03.2020 09:42:39

florian
Administrator

Re: Topics und GlobalStrings Manager

Welche Version von WBCE läuft da bei Dir?


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#8 05.03.2020 09:51:49

rheo
Mitglied

Re: Topics und GlobalStrings Manager

WBCE Version: 1.4.0
PHP Version: 7.0.2

Online

#9 05.03.2020 09:55:40

florian
Administrator

Re: Topics und GlobalStrings Manager

Das hätte dann eigentlich funktionieren sollen.
Hast Du wirklich exakt und komplett den oben geposteten Code in Deine Seite eingefügt? Die Kommentarzeilen sind wichtig und gehören dazu.


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#10 05.03.2020 11:43:08

boeseroeser
Gast

Re: Topics und GlobalStrings Manager

Der outputfilter sollte eigentlich über gesamte Ausgabe laufen, also auch über die Meta-Description.
Ich vermute eher, dass da von topics  aus ein htmlspecialchars oder sowas beteiligt ist. Komme aber momentan nicht ran, weil unterwegs.

#11 05.03.2020 12:51:36

boeseroeser
Gast

Re: Topics und GlobalStrings Manager

In der modify_topic.php steht:
<?php echo (htmlspecialchars($fetch_content['short_description'])); ?>


In der save_topic.php steht zu Thema description nur lapidar:
$description = $admin->get_post_escaped('description');

Außer: Sie beginnt mit einem Leerzeichen. Das Leerzeichen bedeutet: Neu generieren.
In der aktuellen Version (und wohl schon länger) wird dieses Leerzeichen automatisch gelöscht, wenn das Feld verändert wurde, die angegebene Description wird also nicht mehr verändert.

Mal eine GANZ blöde Frage:

...Was allerdings leider nicht klappt ist die Übernahme der GlobalStrings-Inhalte in die Meta-Description und die Meta-Keywords, welche ja von Topics automatisch generiert werden. Dort erscheinen stattdessen die Platzhalter [[string?name=xyz]].

Werden deine Änderungen so gespeichert wie angegeben?

Beitrag geändert von boeseroeser (05.03.2020 12:52:56)

#12 05.03.2020 17:36:03

rheo
Mitglied

Re: Topics und GlobalStrings Manager

Ich bin nicht sicher, ob ich dich richtig verstehe, aber die Angaben im Backend auf der Themen-Seite in den Feldern Meta-Description und Meta-Keywords sind identisch mit den Meta-Angaben im Quelltext der erzeugten Seite, egal ob mit oder ohne Leerzeichen am Anfang. Das Leerzeichen bleibt beim ersten Speichern bestehen; wenn ich es später lösche und wieder einfüge, wird es automatisch gelöscht. Ansonsten

Ich mach mal ein Beispiel, wie es bei mir aussieht :

  • Titel : Pizza-Rezepte

  • Kurzbeschreibung : [[string?name=kurz-xyz]]

  • Kurz : Hier findest du viele leckere Pizza-Rezepte. [[string?name=infos-xyz]]

  • Meta-Description (automatisch) : Hier findest du viele leckere Pizza-Rezepte [[string?name=infos-xyz]]

  • Meta-Keywords (automatisch) : pizza, rezepte, string, name, kurz-xyz, viele, leckere

Hilft das weiter ?

Online

#13 06.03.2020 07:37:55

florian
Administrator

Re: Topics und GlobalStrings Manager

Kannst Du mir mal Backend-Zugangsdaten per PM zukommen lassen?


Code allein macht nicht glücklich. Jetzt spenden!

Offline

Fußzeile des Forums

up