AMR - cms erscheint bei Ankeraufruf

Alles rund um Module und Plugins in CONTENIDO 4.9.
Antworten
McHubi
Beiträge: 1209
Registriert: Do 18. Nov 2004, 23:06
Wohnort: Mettmann
Kontaktdaten:

AMR - cms erscheint bei Ankeraufruf

Beitrag von McHubi » Fr 15. Jul 2016, 12:56

Hallo zusammen,

ich habe folgendes Problem:

Die Inhalte der Startseite von http://www.meinedomain.de können per Anker/Javascript "angesprungen" werden. Funktioniert soweit bestens, beim Aufruf eines Ankers entfällt allerdings der Name des Webartikels und es erscheint der Name des Mandanten. Heißt,
statt
http://www.meinedomain.de/index.html#meinanker
lautet die URL dann
http://www.meinedomain.de/cms/#meinanker

Relevante Einstellungen im AMR:

Artikelname an URLs anhängen: ja
Standard-Artikelname ohne Dateiendung: index
Dateiendung am Ende der URL: .html
Routing: keine Angaben

Als .htaccess wird verwendet die "AMR plugin simple rewrite rules set."

Hat jemand ne Ahnung wie man das korrigieren kann?

Danke euch für Tipps! :D


Markus
seamless-design.de
"Geht nicht!" wohnt in der "Will nicht!"-Strasse.

Das Handbuch zur Version 4.10: CONTENIDO für Einsteiger (4.10)

Das Handbuch zur Version 4.9: CONTENIDO für Einsteiger (4.9)

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von homtata » Fr 15. Jul 2016, 17:06

Hallo Markus,
wenn du Anker und JS in einem Atemzug erwähnst - vielleicht hilft dir die Beobachtung von Ortwin weiter?
http://forum.contenido.org/viewtopic.ph ... er#p169446

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von Oldperl » Mo 18. Jul 2016, 11:03

Servus homtata,

bei meiner "Beobachtung" handelt es sich aber um die URL-Verarbeitung mit Javascript im Backend. Markus bezieht sich aber auf das AMR-Plugin.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von homtata » Mo 18. Jul 2016, 11:33

axo... sorry.

Ich habe auch was ankerlastiges in einer Installation laufen, da klappt das. Allerdings gebe ich da im Modultemplate die Links in Form von

Code: Alles auswählen

front_content.php?ìdart=xx#anker=y
aus.. Ansonsten wäre es hilfreich zu wissen, wie du den Link erstellst, von dem aus gesprungen wird, und welche Skripte da greifen...
LG
Viktor

McHubi
Beiträge: 1209
Registriert: Do 18. Nov 2004, 23:06
Wohnort: Mettmann
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von McHubi » Mo 18. Jul 2016, 15:29

Hallo zusammen,

Danke euch schon mal! Zu den Details:

Der Seiteninhalt ist mit einigen DIVs aufgebaut, die mit IDs gekennzeichnet sind. Diese DIVs sind erst einmal ausgeblendet und werden per Klick auf z. B. ein Bild eingeblendet. Gleichzeit erfolgt ein Sprung zum jeweiligen DIV:

Code: Alles auswählen

<img onclick="javascript:mach_was('meine_id');" ...
diese ID wird von einer JS-Funktion verarbeitet und die ID per

Code: Alles auswählen

function mach_was(meine_id) {
...
window.location.href='#'+meine_id;
...
}
angesprungen.

AMR klappt im Grunde, zumindest wenn ich einen anderen Webartikel aufrufe läuft alles normal.

Das Anspringen der ID funktioniert auch tadellos, nur die Domain ist unschön. :?
seamless-design.de
"Geht nicht!" wohnt in der "Will nicht!"-Strasse.

Das Handbuch zur Version 4.10: CONTENIDO für Einsteiger (4.10)

Das Handbuch zur Version 4.9: CONTENIDO für Einsteiger (4.9)

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von homtata » Mo 18. Jul 2016, 15:51

Ah so! Es könnte klappen, wenn du - wie in meinem Post davor - den kompletten

Code: Alles auswählen

front_content.php?idart=xxx#anker
auch im Javascript machst. Im normalen PHP-Modulcode ist das derzeit auch so nötig, da sonst eben auch ein Sprung auf eine falsche Seite stattfindet. Durch das Wiederholen des eigentlich gleichen Artikels klappts dann plötzlich...

LG

Oldperl
Beiträge: 4250
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von Oldperl » Mo 18. Jul 2016, 16:10

homtata hat geschrieben:Ah so! Es könnte klappen,...
Korrigiere Viktor, es klappt NUR... :)

AMR kann natürlich URL nur Umschreiben, wenn diese auch bekannt sind. Deine Anker werden in diesem Falle vom Browser selbst an die im Base-Tag benannte Adresse angehängt, daher auch "cms/#Anker'. Gibst du aber im Javascript zusätzlich die relative oder absolute URL mit an, so wird was draus. Eventuell das JS direkt im Modul oder in einem Template generieren, und dort mit der URL füllen.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von homtata » Mo 18. Jul 2016, 16:27

.. und ggf. musst du rumprobieren, vor allem wenn du mit dem Anker auf der gleichen Seite bleiben möchtest. Wenn z.B. der Nummernaufruf mit idart oder idcat nicht klappt, dann ggf. mal versuchen, den URl exakt wie im Browser ausgegeben davorzuhängen. Ich bin da nicht so der Spezi wie Ortwin, aber daran hatte es seinerzeit auch gehapert auf PHP-Ebene.

McHubi
Beiträge: 1209
Registriert: Do 18. Nov 2004, 23:06
Wohnort: Mettmann
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von McHubi » Di 19. Jul 2016, 14:04

Hm...
Bei

Code: Alles auswählen

window.location.href='front_content.php?idcat=1&idart=1#'+meine_id;
wird die URL von
http://www.meinedomain.de
zu
http://www.meinedomain.de/front_content ... 1#meine_id

Und das Anspringen der Anker funktioniert erst nach dem zweiten Seitenaufruf...

Verwende ich

Code: Alles auswählen

window.location.href='https://www.meinedomain.de/cms/front_content.php?idcat=1&idart=1#'+meine_id;
kracht der Aufruf mit einer Warnmeldung in punkto Sicherheitszertifikat. :shock:

Verwende ich

Code: Alles auswählen

window.location.href='www.meinedomain.de/cms/front_content.php?idcat=1&idart=1#'+meine_id;
wird die URL von
http://www.meinedomain.de
zu
http://www.meinedomain.de/cms/www.meine ... 1#meine_id
AMR kann natürlich URL nur Umschreiben, wenn diese auch bekannt sind.
AMR brauche ich aber letztlich gar nicht, da die Anker alle auf der bereits aufgerufenen Seite integriert sind.

:|

EDIT: Wald :arrow: Bäume.
Anker alle auf der bereits aufgerufenen Seite integriert
Das ".href" einfach weglassen und gut is... :roll:
seamless-design.de
"Geht nicht!" wohnt in der "Will nicht!"-Strasse.

Das Handbuch zur Version 4.10: CONTENIDO für Einsteiger (4.10)

Das Handbuch zur Version 4.9: CONTENIDO für Einsteiger (4.9)

homtata
Beiträge: 1142
Registriert: Mi 14. Jan 2004, 14:41
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von homtata » Di 19. Jul 2016, 15:09

Immer schön, wenn das Schreiben das Denken so verlangsamt, dass man sich nicht ständig selbst überholt ;-) Gut, dass du das gelöst hast!

McHubi
Beiträge: 1209
Registriert: Do 18. Nov 2004, 23:06
Wohnort: Mettmann
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von McHubi » Mi 27. Jul 2016, 12:06

Hallo zusammen,

diese Anker machen mich grad leicht wahnsinnig. Im IE läuft es wunderbar, der FF und Chrome zickt aber rum. Verkehrte Welt... :wink:

Also - die Umsetzung/ der Ablauf sieht wie folgt aus:

IE
Aufruf von
www.meinedomain.de

Anklicken eines Bildes, dass die ID des Ankers an eine JS-Funktion übermittelt, die den Anker dann per

Code: Alles auswählen

window.location='#'+meine_id;
aufruft.

In der Adresszeile erscheint dann
www.meinedomain.de/#meine_id
und der Sprung zur ID läuft.

FF, Chrome
Aufruf von
www.meinedomain.de

Anklicken eines Bildes, dass die ID des Ankers an eine JS-Funktion übermittelt, die den Anker dann per

Code: Alles auswählen

window.location='#'+meine_id;
aufruft.

In der Adresszeile erscheint dann
www.meinedomain.de/cms/#meine_id
weiter passiert aber nix.

Erst ein zweites Anklicken des Bildes, bei dem sich in der Adresszeile nichts tut, führt zum Anspringen des Ankers.

Ab hier funktioniert es dann immer direkt beim ersten Klick, egal welchen Anker ich anspringen will. Die URL muss zwingend das "cms" beinhalten und z. B. http://www.meinedomain.de/cms/ lauten. Ohne CMS wird beim ersten Klick immer erst auf die CMS-URL umgeschaltet.

Es hilft übrigens auch nicht, wenn die URL von Anfang an
www.meinedomain.de/index.html
www.meinedomain.de/startseite/index.html
www.meinedomain.de/startseite.html
www.meinedomain.de/startseite/startseite.html
lautet.

Bei allen vier Varianten wird die Startseite zwar korrekt aufgerufen aber im FF erfolgt beim ersten Klick immer erst der Wechsel auf http://www.meinedomain.de/cms/#meine_id

AMR-Einstellungen sind wie bisher:
Artikelname an URLs anhängen: ja
Standard-Artikelname ohne Dateiendung: index
Dateiendung am Ende der URL: .html
Routing: keine Angaben
Als .htaccess wird verwendet die "AMR plugin simple rewrite rules set."

Was ggf. reingrätschen könnte, ist der Umstand, dass die Seite nicht unter http:// sondern https:// läuft?

WTF? :shock:
seamless-design.de
"Geht nicht!" wohnt in der "Will nicht!"-Strasse.

Das Handbuch zur Version 4.10: CONTENIDO für Einsteiger (4.10)

Das Handbuch zur Version 4.9: CONTENIDO für Einsteiger (4.9)

McHubi
Beiträge: 1209
Registriert: Do 18. Nov 2004, 23:06
Wohnort: Mettmann
Kontaktdaten:

Re: AMR - cms erscheint bei Ankeraufruf

Beitrag von McHubi » Mo 1. Aug 2016, 14:03

Ist es nicht schön! Wie Kleinigkeiten einen so aufhalten können. :roll: Nach aktuellem Stand der Dinge ist des Rätsels Lösung - ironischerweise auch wieder sonnenklar, wenn man es sieht - diese hier:

Code: Alles auswählen

window.location='http://www.meinedomain.de/test/index.html#'+meine_id;
Aufruf per clean-URL mit führendem http:// - wobei die URL natürlich per Variable an die JS-Funktion übergeben wird.
Jetzt läuft es auch im Firefox und Chrome. Ich hoffe mal, dass das Thema jetzt "durch" ist... :mrgreen:
seamless-design.de
"Geht nicht!" wohnt in der "Will nicht!"-Strasse.

Das Handbuch zur Version 4.10: CONTENIDO für Einsteiger (4.10)

Das Handbuch zur Version 4.9: CONTENIDO für Einsteiger (4.9)

Antworten