Automatisierte Optimierung - Proof of Concept

CMS made simple ist grundsätzlich in der Lage, für Suchmaschinen optimierte URLs auszugeben. Die Feinheiten rund um Pretty URLs & SEO können hier diskutiert werden.
Post Reply
nhaack

Automatisierte Optimierung - Proof of Concept

Post by nhaack »

Hallo zusammen,

zum Auftakt dieser kleinen aber feinen Ecke, ein kleines Scriptgerüst für die automatisierte Optimierung von Webseiten. Das ganze ist ein Proof of Concept einer Plug-in basierten Umsetzung. Nun, die Idee ist nicht von mir - ich habe sie lediglich für CMSMS testweise umgesetzt.

Was macht es?

Es wertet den Referrer aus, ist dieser von einer Suchmaschine, wird die Sucheingabe ausgewertet und ein wenig textlich aufbereitet (Erster Buchstabe eines Wortes groß geschrieben etc) und in einem DB Table gespeichert (siehe nachfolgendes SQL Statement). Im Grunde eine Analytics-Lösung für Arme, nur dass ich die Daten sofort Live in meiner Site nutze.

Beispiel:

Ich habe eine Seite zu Kuchen Rezepten. Dort habe ich ein Rezept zu Käsekuchen. Die Seite ist auf den Begriff "Käsekuchen" optimiert. Jetzt hat jemand z.B. bei Google nach "Käsekuchen Rezept" gesucht und euch gefunden. Die Site registriert dies und setzt einen Zähler hoch. Ab z.B. einer Zahl von 1.000 Hits mit "Käsekuchen Rezept" (und wenn dies der führende Referrer ist) tauscht die Site dann z.B. Title, Headline und die interne Verlinkung oder sonstige Textnennungen (bis auf Page URL) gegen den neuen Begriff aus. Nun ist die Site ein Fünkchen relevanter für den Begriff "Käsekuchen Rezept" als für "Käsekuchen".

Da die meisten Besucher anscheinend über dieses Keyword kommen, macht es Sinn, die Page hierauf zu optimieren um die Position zu stärken.

Eine andere Möglichkeit wäre eine Box zu gestalten, die die zuletzt oder am häufigsten verwendeten Begriffe mit denen Benutzer diese Page gefunden haben.

MySQL Statement zum Anlegen der Tabelle

Code: Select all


-- 
-- Tabellenstruktur für Tabelle `test_autoseo_title`
-- 

CREATE TABLE IF NOT EXISTS `test_autoseo_title` (
  `id` int(11) NOT NULL auto_increment,
  `engine` varchar(60) NOT NULL,
  `ident_1` varchar(120) NOT NULL,
  `ident_2` varchar(120) NOT NULL,
  `counter` int(11) default '0',
  `visible` int(11) default '0',
  `type` int(11) default '0',
  `content` text NOT NULL,
  PRIMARY KEY  (`id`),
  KEY `ident_1` (`ident_1`,`ident_2`,`type`),
  KEY `engine` (`engine`),
  FULLTEXT KEY `content` (`content`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;


Aufruf des Plug-ins als reiner Monitor der einkommenden Keywords:

{capture assign=$title}{title}{/capture}
{autoseo_title mode="track" ident_1=$wert1 ident_2=$wert2 }

die Werte für ident_1 und ident_2 können frei verwendet werden und dienen der Zuordnung der gespeicherten Schnippsel. Mode "Track" sorgt für das Loggen der per Referrer übermittelten Keywords.

Um z.B. eine Liste der Top-Begriffe anzuzeigen

Code: Select all


{autoseo_title mode="track" ident_1=$wert1 ident_2=$wert2 max=10}
{foreach from=$autoseo_title item=item}
{$item}<br />
{/foreach}

Um z.B. den Page Title zu aktualisieren, wenn die Schallmauer von 1.000 überschritten wurde

Code: Select all


<title>{autoseo_title mode="track" ident_1=$wert1 ident_2=$wert2 max=1 treshold=1000}
{if $autoseo_title != false}{$autoseo_title[0]}{else}{title}{/if}</title>

Interne Verlinkung der unterhalb liegenden Seite aktualisieren (zusammen mit Content_Dump):

Code: Select all


{content_dump start_id=$content_id exclude=$content_id}
{foreach from=$dump item=dump}
{autoseo_title ident_1=$dump->content->id ident_2=$dump->content->alias max=1 treshold=1000}
{if $autoseo_title == false}
{cms_selflink page=$dump->content->id}<br />
{else}
{cms_selflink page=$dump->content->id text=$autoseo_title[0]}<br />
{/if}
{/foreach}


Andere Szenarien

Optimierung der internen Verlinkung (unsere Top Artikel, Artikel die etwas Prominenz bedürfen...).
Optimierung der im Fließtext vorkommenden Wörter.
Steuerung von Highlighting bestimmter Wörter im Text.
A/B Testings
...

Fallstricke

Referrer lassen sich ganz einfach manipulieren. Wenn jemand eine entsprechende Seite aufruft, und jedes Mal "Katzenklo" mitsendet, sieht eine Page irgendwann ziemlich komisch aus.

Die mitgesendeten Keyword-Strings machen oft keinen Sinn (Stichwort: Grammatik).

Verfeinern

Grammatikoptimierung, Stopwords, Flood-Protection

----

Parameter:

mode="track" Referrer Tracking anschalten
ident_1 & ident_2 = String zum identifizieren des Inhalts
treshold = limit ab dem ein Keyword aus der DB in Betracht gezogen wird (Anzahl Hits)
max = Anzahl der Ergebnis
assign = name der Variablen mit dem Ergebnis (Array)

Bin gespannt was ihr dazu sagt. Bitte zunächst keine Supportanfragen stellen. Zur Verfügung gestellt, so wie es hier steht. Download des Attachements auf eigene Gefahr.

Beste Grüße
Nils

P.S.:
Attachments

[The extension txt has been deactivated and can no longer be displayed.]

Andiministrator

Re: Automatisierte Optimierung - Proof of Concept

Post by Andiministrator »

Klasse Idee. Ich werde es heut abend gleich mal bei einer Seite einbauen.

Super wäre natürlich, wenn man die Top10 im Backend im Überblick hätte, aber dazu müsste man wohl die Files von CMSms ändern und hätte dann Probleme beim Update ...
nhaack

Re: Automatisierte Optimierung - Proof of Concept

Post by nhaack »

Hi,

das Plug-in wurde recht schnell zusammen gezimmert, also keine Gewähr für den Einsatz auf Live-Seiten. Zum Rumspielen kann man treshold = 1 o.Ä wählen und den Referrer manipulieren. Dann sieht man den Effekt und ob es läuft und kann in Ruhe ggf. Erweiterungen und Verbesserungen einbauen.

Eine Backend Pflege wäre in der Tat ganz nett. Mit einem Modul-Ansatz ließe sich das bestimmt gut umsetzen.

Bin gespannt ob es bei gut läuft :D. Ich verwende es öfters in Combo mit Content_Dump (den ich für alle On-Site Teaser verwende).

Man könnte jetzt natürlich von extern auf diese Daten zugreifen (ein Webservice Plug-in ist relativ schnell geschrieben) und damit könnte eine andere Site die verwendeten Keywords im Link auf eine Zielseite mit Trackingdaten dieser externen Site optimieren. Nur so eine Idee am Rande...  ::) *träller*

Beste Grüße
Nils
Andiministrator

Re: Automatisierte Optimierung - Proof of Concept

Post by Andiministrator »

Ich hab gerade das Plugin mal getestet. Einige kleinere Fehler habe ich beseitigt (siehe Anhang), dann ließ sich das Plugin zunächst einbinden. Ich habe es folgendermaßen eingebunden:

Code: Select all

{autoseo_title mode="track" ident_1=$wert1 ident_2=$wert2 max=5}<div class="sidebar-box">{foreach from=$autoseo_title item=item}{$item}<br />{/foreach}</div>
Leider funktioniert es dann auf einer Live-Seite doch noch nicht so ganz. Wenn ich bei Google nach der Seite suche und dann auf das Suchergebnis klicke, bricht die Ausgabe der Seite an der Stelle des Platzhalters ab.
Attachments

[The extension txt has been deactivated and can no longer be displayed.]

nhaack

Re: Automatisierte Optimierung - Proof of Concept

Post by nhaack »

Zugegeben,

habe das Plug-in um einige spezielle Zusatzfunktionen bereinigt, damit es nicht zu unübersichtlich wird. Da hat sich dann wohl ein Fehler eingeschlichen. Hast du mal in die Error Logs geguckt?

Beste Grüße
Nils
Andiministrator

Re: Automatisierte Optimierung - Proof of Concept

Post by Andiministrator »

Ja, gerade eben ;)
Steht aber leider nix drin. Müsste ich vielleicht nochmal mal in Ruhe mit dem Debug Mode von CMSms testen.
Post Reply

Return to “Suchmaschinenoptimierung (SEO)”