Seite 1 von 1

Suchbegriff im title anzeigen?

Verfasst: So 21. Feb 2010, 14:43
von dosenbrot
Hallo Leute,

gibt es eine Möglichkeit, mit dem Standard-Suchmodul-Output in der 4.8.11-Version mit AMR den Suchbegriff des Standardmoduls "Search Output" im <title></title> anzeigen zu lassen?

Zum Hintergrund: Ich nutze das Modul auch für eine tagcloud, eine Wortwolke, durch automatische Übernahme in den title-tag wäre es deutlich suchmaschinenoptimierter!

Hat jemand eine Idee?

Beste Grüße und danke
dosenbrot

Re: Suchbegriff im title anzeigen?

Verfasst: Mo 22. Feb 2010, 13:09
von McHubi
Hallo,

auf die Schnelle: dafür müsstest Du eigentlich nur im Modul "title-tag" die Variable $sBread um das Suchwort $searchterm ergänzen...

Such nach dem hier

Code: Alles auswählen

    if ($sHeadline != '') {
        $sBread .= ' - '.$sHeadline;
    }
Und füge danach $sBread .= ' - '.$searchterm; ein. Um die $sBread-Erweiterung dann noch eine Abfrage nach der idcat, in der die Suchausgabe liegt, und schon wird die Erweiterung nur bei der Suchausgabe und nicht in allen Artikeln durchgeführt...

Code: Alles auswählen

    if ($sHeadline != '') {
        $sBread .= ' - '.$sHeadline;
    }
if($idcat=="32")
  {
  $sBread .= ' - '.htmlspecialchars(strip_tags($searchterm));
  };

Re: Suchbegriff im title anzeigen?

Verfasst: Mo 22. Feb 2010, 16:49
von dosenbrot
Tausend Dank, das war eine extrem gute Hilfe, denn das hat prima geklappt! Vielen Dank! :D

Re: Suchbegriff im title anzeigen?

Verfasst: Mo 22. Feb 2010, 18:43
von McHubi
:mrgreen: Freut mich! :mrgreen:

Suchbegriff auch in meta-description anzeigen?

Verfasst: Mi 17. Mär 2010, 20:21
von dosenbrot
Und nach einiger Zeit habe ich noch eine ergänzende Frage, da ich es nicht hinbekommen habe:
Kann man das Modul nicht auch für die meta-description benutzen?

Ich hab den Inhalt des Moduls in ein weiteres neues Modul eingefügt, da ich ein paar kleine Änderungen in der Description haben wollte. Wenn ich jedoch im Layout einen Container in die meta-descritpion setze und dann über das template das Modul einfüge, wird das Design auf allen "nicht-Suchergebnisseiten" zerschossen, da das/der/das meta-tag mit / > beendet wird, jedoch danach die beschreibung, welche als standard im "layout" eingegeben ist, folgt. Beispiel:

Code: Alles auswählen

<meta name="description" content="Beschreibung des Artikelinhalts." />
Beschreibung, die im Layout als Standard eingegeben ist." />
In den Suchergebnisseiten passt es jedoch wie es soll!!! Dieser Fehler passiert nur auf allen anderen Seiten. Merkwürdig.

Über Hilfe wäre ich wieder sehr dankbar :)

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 07:50
von McHubi
Und wie sieht Dein Modul jetzt aus? Quellcode vs. Kristallkugel -> 1:0 :wink:

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 14:42
von dosenbrot
Okay, logisch, sorry :oops:
Hier der Code des Moduls:

Code: Alles auswählen

<?php
/**
* $RCSfile$
*
* Description: Print HTML title tag content
*
* @version 1.0.0
* @author Rudi Bieller
* @copyright four for business AG <www.4fb.de>
*
* {@internal
* created 2008-04-07
* }}
*
* $Id$
*/

cInclude('classes', 'Contenido_FrontendNavigation/Contenido_FrontendNavigation_Breadcrumb.class.php');
try {
    $oBread = new Contenido_FrontendNavigation_Breadcrumb($db, $cfg, $client, $lang, $cfgClient);
    $oBreadCats = $oBread->get($idcat, 1);
    $sBread = 'Dein Suchbegriff zum Thema ';
    $aBread = array();
    foreach ($oBreadCats as $oConCat) {

    }
    $sBread .= implode(' - ', $aBread);
    $oArticle = new Article($idart, $client, $lang);
    $sHeadline = strip_tags($oArticle->getContent('CMS_HTMLHEAD', 1));
    if ($sHeadline != '') {
        $sBread .= ' '.$searchterm;
    }
if($idart=="12")
  {
  $sBread .= ''.htmlspecialchars(strip_tags($searchterm)).' - ';
  };
    echo $sBread;
} catch (InvalidArgumentException $eI) {
    echo 'Contenido';
} catch (Exception $e) {
    echo 'Contenido';
}
?>
An irgendeiner Stelle bin ich wohl wieder zu blöd zu kapieren, wie es richtig sein müsste...

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 19:34
von McHubi
Tag!

Vergleich mal den von mir geposteten Code:

Code: Alles auswählen

        if ($sHeadline != '') {
            $sBread .= ' - '.$sHeadline;
        }
    if($idcat=="32")
      {
      $sBread .= ' - '.htmlspecialchars(strip_tags($searchterm));
      };
und das was in Deinem Modul steht:

Code: Alles auswählen

    if ($sHeadline != '') {
        $sBread .= ' '.$searchterm;
    }
if($idart=="12")
  {
  $sBread .= ''.htmlspecialchars(strip_tags($searchterm)).' - ';
  };
:arrow: :idea: :D

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 19:52
von dosenbrot
Nee, da ist sogar kein sichtbarer Unterschied im Effekt ob ich es so habe wie du oder wie in meiner Version.
Ich merke gerade, dass das Phänomen "meta-description-tag" zerschießen immer passiert, sobald ich im layout einen Container in der description einbinde:

Code: Alles auswählen

        <title>CMS_CONTAINER[51]Und hier Standard-Titel</title>
        <meta name="description" content="CMS_CONTAINER[52]Und hier Standard-Description." />
Beim title ist also ein container kein Problem, bei der description scheinbar schon!?

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 20:04
von Dodger77
Das könnte dann evtl. mit der Chain "cecCreateMetatags" zusammen hängen (siehe "contenido/plugins/chains/includes/").

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 20:18
von dosenbrot
in der include.chain.content.createmetatags.php betrifft es also vermutlich diese zeilen?

Code: Alles auswählen

						break;
					case 'description':
						//Build description metatag from first headline on page
						$iCheck = CheckIfMetaTagExists($metatags, 'description');
						$metatags[$iCheck]['name'] = 'description';
						$metatags[$iCheck]['content'] = htmlentities($sText,ENT_QUOTES,$sEncoding);
						
						break;
					case 'title':
						//Build description metatag from first headline on page
						$iCheck = CheckIfMetaTagExists($metatags, 'title');
						$metatags[$iCheck]['name'] = 'title';
						$metatags[$iCheck]['content'] = htmlentities($sText,ENT_QUOTES,$sEncoding);
aber was muss dann anders und wie?

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 20:32
von McHubi
Was hat denn die Sache mit der description mit dem Title-Tag-Modul zu tun? Wo willst Du die description denn ausgeben?

Der Title wird ja auch nicht aus dem Feld Titel in den Artikel-Eigenschaften gezogen sondern aus der Benennung der Kategorien bzw. der Headline in einem Artikel - es sei denn, in den Eigenschaften steht unten was unter "Seitentitel".

Oder hab ich hier jetzt nen Brett vorm Kopf... :|

Re: Suchbegriff im title anzeigen?

Verfasst: Do 18. Mär 2010, 20:35
von dosenbrot
Hehe, kein Problem ;) Ich erkläre es gerne noch einmal.
Meine Frage war die, ob ich das title-Modul nicht auch einfach für die meta-description bei den Suchbegriffen nutzen kann?
Grund ist der, dass ich die Suchausgabe ja auch für "tags" (vgl. http://forum.contenido.org/viewtopic.php?f=61&t=29115) nutze und das google webmastertool meckert bei meiner seite, dass dort natürlich die meta-description immer identisch ist.

Also ich mache das immer so, dass ich im "layout" natürlich das Grundgerüst einschließlich fester meta-tags festlege. jetzt hab ich zwischen <title></title> zum einen den Standard-Titel festgelegt und davor den Container gepackt, um bei den Suchergebnissen das title-modul zu integrieren, das läuft ja auch so bestens! da wird dann der Suchbegriff vorangestellt und danach folgt der standardtitel, welcher im layout steht! soweit alles bestens! (auf den anderen unterseiten gebe ich den title ansonsten immer über eigenschaften ein).

Nun hatte ich gehofft / gedacht, dass dieses Vorgehen auch mit dem title-Modul in der meta-description möglich wäre.

Re: Suchbegriff im title anzeigen?

Verfasst: Fr 19. Mär 2010, 10:48
von McHubi
Und hier ist dann das Problem, dass beim Title einfach der Container zwischen zwei Tags geklemmt wird

<title>...</title>

Während er bei der description im Tag selbst eingebunden werden muss

<meta name="description" content="..." />

Hast Du den Container exakt so eingebunden wie Du es in einem Deiner vorherigen Posts beschrieben hast?
-> <meta name="description" content="CMS_CONTAINER[52]Und hier Standard-Description." />

Mein Ansatz hätte etwas anders ausgesehen:

<meta name="description" content="<CMS_CONTAINER[52] name="description" types="Content" mode="fixed" default="description">Und hier Standard-Description." />

Allerdings würde ich hier fast drauf wetten, dass die vielen " zu Problemen führen. Wilde Vermutung: durch stellenweises ersetzen mit ' oder ergänzen mit \ im Layout oder im Modul selbst könnte das ggf. behoben werden.

Re: Suchbegriff im title anzeigen?

Verfasst: Fr 19. Mär 2010, 12:35
von dosenbrot
Mist, logisch, beim title liegt der container zwischen zwei tags, bei der description mittendrin, das ist wohl genau das Problem. :(

Mit deinem Ansatz wird das Ergebnis dann leider noch wilder ;)

Code: Alles auswählen

<meta name="description" content="Description, die bei Artikeleigenschaften eingetragen wurde." />
 name="description" types="Content" mode="fixed" default="description">Und hier Standard-Description." />
Ich befürchte, dass ich nicht dabei rumkommen werde, für die Suchergebnisseiten ein neues, zusätzliches Layout anzulegen und darin die meta-description ganz aus lasse, dafür einfach den container dort einfüge. Dann müsste es doch eigentlich klappen. Schöner wäre es natürlich mit nur einem Layout.

Danke für eure Mitüberlegungen, aber ich befürchte, es gibt da dann doch keine perfekte Lösung?