Reihenfolge der Meta-Tags ändern.

Gesperrt
MyAccount
Beiträge: 383
Registriert: Do 17. Jul 2003, 10:21

Reihenfolge der Meta-Tags ändern.

Beitrag von MyAccount »

Hallo liebe Gemeinde,

ich suche nach eine Möglichkeit die Reihenfolge der Meta-Tags zu verändern. Im konkreten Fall solle das Tag <meta name="description"> vor dem Tag <meta name="keywords"> erscheinen. Ich nutze Contenido in vielen verschiedenen Versionen und Installationen. Bei zwei Installationen habe ich aber folgendes beobachtet:

Mandant 1 Contenido Version 4.6.8 schreibt zuerst die Description und dann die Keywords Mandant 2 mit der gleichen Contenido Version 4.6.8 aber zuerst die Keywords und dann die Description. Ich denke mal, dass ich nicht ein und die selbe Contenido-Version hochgeladen habe. Bin mir aber dabei nicht sicher. Ist leider schon eine Weile her. ;)

Ich gehe davon aus, dass die functions.con2.php für die Einbindung der Meta-Tags in den Frontend-Quellcode verantwortlich ist und habe mir dementsprechend den Code angesehen. Einziger Unterschied ist der Kopf der Dateien.


Aus der Mandant 1 Installation

Code: Alles auswählen

/*****************************************
* File      :   $RCSfile: functions.con2.php,v $
* Project   :   Contenido
* Descr     :   Contenido Content Functions
*				NOTE: Please add only stuff which is relevant for
*					  the frontend AND the backend. This file should
*					  NOT contain any backend editing functions to
*					  improve frontend performance.
*
* Author    :   $Author: timo.hummel $
*               
* Created   :   15.12.2003
* Modified  :   $Date: 2005/11/08 16:24:38 $
*
* © four for business AG, www.4fb.de
*
* $Id: functions.con2.php,v 1.31 2005/11/08 16:24:38 timo.hummel Exp $
******************************************/

Aus der Mandant 2 Installation

Code: Alles auswählen

/*****************************************
* File      :   $RCSfile: functions.con2.php,v $
* Project   :   Contenido
* Descr     :   Contenido Content Functions
*				NOTE: Please add only stuff which is relevant for
*					  the frontend AND the backend. This file should
*					  NOT contain any backend editing functions to
*					  improve frontend performance.
*
* Author    :   $Author: admin $
*               
* Created   :   15.12.2003
* Modified  :   $Date: 2007/01/25 19:05:56 $
*
* © four for business AG, www.4fb.de
*
* $Id: functions.con2.php,v 1.2 2007/01/25 19:05:56 admin Exp $
******************************************/
Abgesehen vom Sinn oder Unsinn die Reihenfolge von Meta-Tags ändern zu wollen, Vielleicht weiß jemand von euch, wo ich noch suchen kann.
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

such mal nach der function conGetAvailableMetaTagTypes

beim sql query dort reicht eventuell eine ergänzung von

Code: Alles auswählen

ORDER BY idmetatype
*** make your own tools (wishlist :: thx)
MyAccount
Beiträge: 383
Registriert: Do 17. Jul 2003, 10:21

Beitrag von MyAccount »

emergence...

Wie immer einfach super. ;)

Danke. Ich werde dann dort mal suchen, warum die Contenido-Versionen unterschiedlich arbeiten. ;)
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Sie werden einfach in unterschiedlicher Reihenfolge in der DB stehen...

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
MyAccount
Beiträge: 383
Registriert: Do 17. Jul 2003, 10:21

Beitrag von MyAccount »

Hallo HerrB,

das vermute ich auch gerade. ;)

Code: Alles auswählen

function conGetAvailableMetaTagTypes()
{
	global $cfg;

	$db = new DB_Contenido;

	$sql = "SELECT idmetatype, metatype, fieldtype, maxlength, fieldname
					FROM ".$cfg["tab"]["meta_type"];

	$db->query($sql);

	$metatag = array ();

	while ($db->next_record())
	{
		$newentry["name"] = $db->f("metatype");
		$newentry["fieldtype"] = $db->f("fieldtype");
		$newentry["maxlength"] = $db->f("maxlength");
		$newentry["fieldname"] = $db->f("fieldname");
		$metatag[$db->f("idmetatype")] = $newentry;
	}

	return $metatag;

}
Aber wie kann ich dann die Reihenfolge ändern?

Wenn ich den Code da oben so sehe, dann wird doch das Array wie folgt aussehen:

array(
[1] array(
[name] = autor
[fieldtype] = text ... usw.

Ein ksort($metatype) vor dem return verursacht nur eine Fehlermeldung: Invalid argument supplied for foreach() ;)

Hast Du vielleicht noch einen Tipp?!
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

emergence hat geschrieben:such mal nach der function conGetAvailableMetaTagTypes

beim sql query dort reicht eventuell eine ergänzung von

Code: Alles auswählen

ORDER BY idmetatype
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
MyAccount
Beiträge: 383
Registriert: Do 17. Jul 2003, 10:21

Beitrag von MyAccount »

Sorry HerrB, das hab ich schon gemacht. ;)

Das Ergebnis: Gar keines. Die metatags werden überhaupt nicht mehr angezeigt. ?!

Ich werde noch mal weiter suchen.

Danke Dir. ;)
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

also wenn die sql zeile so aussieht

Code: Alles auswählen

$sql = "SELECT idmetatype, metatype, fieldtype, maxlength, fieldname FROM ".$cfg["tab"]["meta_type"]." ORDER BY idmetatype";
bringt das sehr wohl ein ergebnis...
*** make your own tools (wishlist :: thx)
MyAccount
Beiträge: 383
Registriert: Do 17. Jul 2003, 10:21

Beitrag von MyAccount »

Ich verstehe die Welt nicht mehr. Ich habe genau das gemacht. ?! Wie auch immer. Es funktioniert jetzt. Danke für eure Geduld.
Gesperrt