Meta-Daten und dynamische Seitentitel: Unterschied zwischen den Versionen

Aus DynPG-Wiki
Wechseln zu: Navigation, Suche
K (Webseiten Suchmaschinen-tauglich machen mit DynPG wurde nach Webseiten Suchmaschinen-tauglich machen verschoben)
K (Snippets einbinden)
 
(23 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
[[Kategorie:Integration in eine Webseite]]
 
[[Kategorie:Integration in eine Webseite]]
 +
In diesem Artikel erfahren Sie, wie man DynPG dazu verwenden kann, einer Webseite suchmaschinentauglicher zu machen. Dies geschieht, indem der HTML-Titel, sowie die Meta-Keywords und Meta-Description der Webseite von DynPG automatisiert erzeugt werden.
  
In diesem Artikel erfahren Sie, wie man DynPG dazu benutzt einer Webseite eine bessere Tauglichkeit für Suchmaschinen zu verschaffen. Dies geschieht, indem der HTML-Title und die Meta-Keywords der Webseite von DynPG automatisiert erzeugt werden.
+
{{Caution
So erstellte Websites werden bei Google trotz kritischen Zeichen in der URL wie <tt>?</tt> oder <tt>&</tt> sehr gut indexiert! Auch wird bei von DynPG erstellten Webseiten der Titel mit in die URL übernommen, was das Ranking in Suchmaschinen verbessert.
+
|So erstellte Websites werden von Suchmaschinen wie Google trotz Sonderzeichen in der URL wie <tt>?</tt> oder <tt>&</tt> sehr gut indexiert. Auch wird bei von DynPG erstellten Webseiten der Titel mit in die URL übernommen, was das Ranking in Suchmaschinen verbessert. Siehe hierzu auch den Artikel über die [[Mythen der Suchmaschinenoptimierung]].}}
  
Hierzu müssen Sie nun im Kopf der PHP-Seite, die Ihren Inhalt anzeigt, folgende Änderungen im oberen Bereich des Codes durchführen:
+
== Generierung der Meta-Tags und des Seitentitels ==
<code>[php,N]
+
 
<title>
+
=== Snippets ===
  <?php include("inc/meta_title.php"); ?> (und allenfalls eine manuelle Ergänzung...)
+
Sie benötigen die Dateien aus dem folgenden ZIP-Archiv: [[Media:Meta-Daten.zip|'''Meta-Daten.zip''']].
</title>
+
 
<meta name="keywords" content=" <?php include("inc/meta_keywords.php"); ?> (und allenfalls manuell eingegebene Schlüsselwörter, welche auf allen Seiten erscheinen sollen" />
+
 
</code>
+
Dieses enthält die folgenden Dateien:
 +
* '''<tt>meta-description.php</tt>:''' Snippet für das Meta-Description Tag
 +
* '''<tt>meta-keywords.php</tt>:''' Snippet für das Meta-Keywords Tag
 +
* '''<tt>meta-title.php</tt>:''' Snippet für das <tt><title></tt> Tag
  
Nun benötigen Sie noch die Dateien aus folgender ZIP-Datei: [[Media:Suchmaschine.zip|Suchmaschine.zip]]
 
*das <tt>tpl</tt>-Verzeichnis entpacken Sie in Ihr DynPG-Hauptverzeichnis (dort befindet sich auch schon ein <tt>tpl</tt>-Ordner!)
 
*das <tt>inc</tt>-Verzeichnis entpacken Sie in dasselbe Verzeichnis in dem die PHP-Datei liegt, die Sie mit obigen Code ergänzt haben
 
  
DynPG schreibt nun automatisch die Artikel-Titel, die im Backend eingegeben wurden, in die ausgegebene HTML-Datei. Ebenso geschieht dies mit den Keywords, diese werden im Backend bei den Artikeln im Feld ''Suchindizies'' mit Leerzeichen ohne Kommata eingegeben.
+
Die im Zip-Archiv enthaltenen Dateien sind alle in etwa gleich aufgebaut. Sie unterscheiden sich nur in der zweiten Zeile, in der das verwendete Template bestimmt wird. Im DynPG-Ordner unter '<tt>/tpl/MyCMS/</tt>' befinden sich unter anderem die drei Template-Ordner '<tt>meta/</tt>', '<tt>description/</tt>' und '<tt>title/</tt>', welche hier verwendet werden. Diese Templates erzeugen die jeweiligen Informationen und geben sie entsprechend formatiert aus.
  
==Inhalt der ZIP-Datei==
+
'''Beispiel: <tt>meta_keywords.php</tt>'''
Zur Information hier noch der Inhalt der ZIP-Datei:
+
*enthält in obigem Code eingebundene PHP-Dateien <tt>inc/meta_keywords.php</tt> und <tt>inc/meta_title.php</tt>
+
:<tt>'''inc/meta_keywords.php'''</tt>
+
 
<code>[php,N]
 
<code>[php,N]
 
<?php
 
<?php
 +
  $GLOBALS["DynPG"]->saveCurrentParams();
 
   $GLOBALS["DynPG"]->setupTemplate('meta');
 
   $GLOBALS["DynPG"]->setupTemplate('meta');
 +
 
   $GLOBALS["DynPG"]->SetParam_AG_Anytime(FALSE);
 
   $GLOBALS["DynPG"]->SetParam_AG_Anytime(FALSE);
 
   $GLOBALS["DynPG"]->SetParam_AG_ForceNav(FALSE);
 
   $GLOBALS["DynPG"]->SetParam_AG_ForceNav(FALSE);
Zeile 43: Zeile 43:
 
   $GLOBALS["DynPG"]->SetParam_A_PrintNavigation(FALSE);
 
   $GLOBALS["DynPG"]->SetParam_A_PrintNavigation(FALSE);
 
   $GLOBALS["DynPG"]->SetParam_A_ArticleHeader(FALSE);
 
   $GLOBALS["DynPG"]->SetParam_A_ArticleHeader(FALSE);
 +
  $GLOBALS["DynPG"]->SetParam_A_fullLoadText(FALSE);
 
   $GLOBALS["DynPG"]->Write_Article();
 
   $GLOBALS["DynPG"]->Write_Article();
  
   $GLOBALS["DynPG"]->SetupTemplate('default');
+
   $GLOBALS["DynPG"]->loadSavedParams();
 +
  $GLOBALS["DynPG"]->setupTemplate('default');
 
?>
 
?>
 
</code>
 
</code>
:<tt>'''inc/meta_title.php'''</tt>
 
<code>[php,N]
 
<?php
 
  $GLOBALS["DynPG"]->setupTemplate('title');
 
  $GLOBALS["DynPG"]->SetParam_AG_Anytime(FALSE);
 
  $GLOBALS["DynPG"]->SetParam_AG_ForceNav(FALSE);
 
  $GLOBALS["DynPG"]->SetParam_AG_Order( Array( 'INDEX' ) );
 
  $GLOBALS["DynPG"]->SetParam_AG_Sort( Array( 'ASC' ) );
 
  $GLOBALS["DynPG"]->Write_AllGroups();
 
  
  $GLOBALS["DynPG"]->SetParam_AA_Anytime(FALSE);
+
=== Snippets einbinden ===
  $GLOBALS["DynPG"]->SetParam_AA_Order( Array( 'date_from' ) );
+
Zum Einbinden der Snippets müssen Sie nun im Kopf der PHP-Seite folgenden Code im Bereich zwischen den <tt><nowiki><head></nowiki></tt>-Tags einfügen:
  $GLOBALS["DynPG"]->SetParam_AA_Sort( Array( 'DESC' ) );
+
  $GLOBALS["DynPG"]->SetParam_AA_Maxview(10);
+
  $GLOBALS["DynPG"]->SetParam_AA_ForceNav(FALSE);
+
  $GLOBALS["DynPG"]->SetParam_AA_CategoryNavigation(FALSE);
+
  $GLOBALS["DynPG"]->Write_AllArticles();
+
  
  $GLOBALS["DynPG"]->SetParam_A_Anytime(FALSE);
+
'''Snippets im <tt><nowiki><head></nowiki></tt>-Bereich einbinden:'''
  $GLOBALS["DynPG"]->SetParam_A_CategoryNavigation(FALSE);
+
<code>[html,N]
  $GLOBALS["DynPG"]->SetParam_A_PrintNavigation(FALSE);
+
<title> <?php include("inc/meta_title.php"); ?> </title>
  $GLOBALS["DynPG"]->SetParam_A_ArticleHeader(FALSE);
+
  $GLOBALS["DynPG"]->Write_Article();
+
  
  $GLOBALS["DynPG"]->SetupTemplate('default');
+
<meta name="keywords" content="<?php include("inc/meta_keywords.php"); ?>" />
?>
+
<meta name="description" content="<?php include("inc/meta_description.php"); ?>" />
</code>
+
*enthält Templates für den Titel (<tt>tpl/MyCMS/title/*.tpl</tt>) und die Keywords (<tt>tpl/MyCMS/meta/*.tpl</tt>)
+
:<tt>'''tpl/MyCMS/title/articles.tpl'''</tt>
+
<code>[html, N]
+
<!-- RepeatedListBegin name="listing" -->{$# {$LIST_INDEX} == 1#}{$GROUP_NAME}{$# End #}<!-- RepeatedListFinish -->
+
</code>
+
:<tt>'''tpl/MyCMS/title/detail.tpl'''</tt>
+
<code>[html, N]
+
{$TITLE}
+
</code>
+
:<tt>'''tpl/MyCMS/title/groups.tpl'''</tt>
+
<code>[html, N]
+
{$GROUP_NAME}
+
</code>
+
:<tt>'''tpl/MyCMS/meta/articles.tpl'''</tt>
+
<code>[html, N]
+
<!-- RepeatedListBegin name="listing" -->{$# {$LIST_INDEX} == 1#}{$GROUP_NAME}{$# End #}<!-- RepeatedListFinish -->
+
</code>
+
:<tt>'''tpl/MyCMS/meta/detail.tpl'''</tt>
+
<code>[html, N]
+
{$SEARCHKEYS}
+
</code>
+
:<tt>'''tpl/MyCMS/meta/groups.tpl'''</tt>
+
<code>[html, N]
+
{$GROUP_NAME}
+
 
</code>
 
</code>
 +
 +
{{Note
 +
|Der angegebene Pfad im Include-Befehl bezieht sich auf den Speicherort des jeweiligen Snippets relativ zu der Datei, in der diese Anweisungen eingefügt wird. D.h. in diesem Beispiel befinden sich die Snippets in einem Unterordner <tt>inc/</tt>. Passen Sie diese Pfadangaben entsprechend dem Speicherort der Snippets auf Ihrem Server an.}}
 +
 +
== Beschreibung und Schlüsselwörter festlegen ==
 +
DynPG schreibt nun automatisch die Artikel-Titel, die im Backend eingegeben wurden, in die ausgegebene HTML-Datei an die Stelle des <tt><title></tt> Tags. Ebenso geschieht dies mit der Description und den Keywords. Die Description, d.h. die Beschreibung der Webseite, wird aus dem Lead-Text generiert. Die Keywords (Schlüsselwörter) werden im Backend bei den Artikeln im Feld ''Suchindizies'' mit durch Kommata getrennt eingegeben.
 +
 +
 +
[[Image:Meta Tags.jpg|center]]
 +
 +
== Siehe auch ==
 +
*[[Tutorial - Meta-Daten und dynamische Seitentitel]]
 +
*[[Mythen der Suchmaschinenoptimierung]]

Aktuelle Version vom 30. September 2011, 11:04 Uhr

In diesem Artikel erfahren Sie, wie man DynPG dazu verwenden kann, einer Webseite suchmaschinentauglicher zu machen. Dies geschieht, indem der HTML-Titel, sowie die Meta-Keywords und Meta-Description der Webseite von DynPG automatisiert erzeugt werden.

Caution.png Achtung: So erstellte Websites werden von Suchmaschinen wie Google trotz Sonderzeichen in der URL wie ? oder & sehr gut indexiert. Auch wird bei von DynPG erstellten Webseiten der Titel mit in die URL übernommen, was das Ranking in Suchmaschinen verbessert. Siehe hierzu auch den Artikel über die Mythen der Suchmaschinenoptimierung.

Generierung der Meta-Tags und des Seitentitels

Snippets

Sie benötigen die Dateien aus dem folgenden ZIP-Archiv: Meta-Daten.zip.


Dieses enthält die folgenden Dateien:

  • meta-description.php: Snippet für das Meta-Description Tag
  • meta-keywords.php: Snippet für das Meta-Keywords Tag
  • meta-title.php: Snippet für das <title> Tag


Die im Zip-Archiv enthaltenen Dateien sind alle in etwa gleich aufgebaut. Sie unterscheiden sich nur in der zweiten Zeile, in der das verwendete Template bestimmt wird. Im DynPG-Ordner unter '/tpl/MyCMS/' befinden sich unter anderem die drei Template-Ordner 'meta/', 'description/' und 'title/', welche hier verwendet werden. Diese Templates erzeugen die jeweiligen Informationen und geben sie entsprechend formatiert aus.

Beispiel: meta_keywords.php

<?php
  $GLOBALS["DynPG"]->saveCurrentParams();
  $GLOBALS["DynPG"]->setupTemplate('meta');
 
  $GLOBALS["DynPG"]->SetParam_AG_Anytime(FALSE);
  $GLOBALS["DynPG"]->SetParam_AG_ForceNav(FALSE);
  $GLOBALS["DynPG"]->SetParam_AG_Order( Array( 'INDEX' ) );
  $GLOBALS["DynPG"]->SetParam_AG_Sort( Array( 'ASC' ) );
  $GLOBALS["DynPG"]->Write_AllGroups();
 
  $GLOBALS["DynPG"]->SetParam_AA_Anytime(FALSE);
  $GLOBALS["DynPG"]->SetParam_AA_Order( Array( 'date_from' ) );
  $GLOBALS["DynPG"]->SetParam_AA_Sort( Array( 'DESC' ) );
  $GLOBALS["DynPG"]->SetParam_AA_Maxview(10);
  $GLOBALS["DynPG"]->SetParam_AA_ForceNav(FALSE);
  $GLOBALS["DynPG"]->SetParam_AA_CategoryNavigation(FALSE);
  $GLOBALS["DynPG"]->Write_AllArticles();
 
  $GLOBALS["DynPG"]->SetParam_A_Anytime(FALSE);
  $GLOBALS["DynPG"]->SetParam_A_CategoryNavigation(FALSE);
  $GLOBALS["DynPG"]->SetParam_A_PrintNavigation(FALSE);
  $GLOBALS["DynPG"]->SetParam_A_ArticleHeader(FALSE);
  $GLOBALS["DynPG"]->SetParam_A_fullLoadText(FALSE);
  $GLOBALS["DynPG"]->Write_Article();
 
  $GLOBALS["DynPG"]->loadSavedParams();
  $GLOBALS["DynPG"]->setupTemplate('default');
?>

Snippets einbinden

Zum Einbinden der Snippets müssen Sie nun im Kopf der PHP-Seite folgenden Code im Bereich zwischen den <head>-Tags einfügen:

Snippets im <head>-Bereich einbinden:

<title> <?php include("inc/meta_title.php"); ?> </title>
 
<meta name="keywords" content="<?php include("inc/meta_keywords.php"); ?>" />
<meta name="description" content="<?php include("inc/meta_description.php"); ?>" />
Note.png Bemerkung: Der angegebene Pfad im Include-Befehl bezieht sich auf den Speicherort des jeweiligen Snippets relativ zu der Datei, in der diese Anweisungen eingefügt wird. D.h. in diesem Beispiel befinden sich die Snippets in einem Unterordner inc/. Passen Sie diese Pfadangaben entsprechend dem Speicherort der Snippets auf Ihrem Server an.

Beschreibung und Schlüsselwörter festlegen

DynPG schreibt nun automatisch die Artikel-Titel, die im Backend eingegeben wurden, in die ausgegebene HTML-Datei an die Stelle des <title> Tags. Ebenso geschieht dies mit der Description und den Keywords. Die Description, d.h. die Beschreibung der Webseite, wird aus dem Lead-Text generiert. Die Keywords (Schlüsselwörter) werden im Backend bei den Artikeln im Feld Suchindizies mit durch Kommata getrennt eingegeben.


Meta Tags.jpg

Siehe auch