Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

HTML Code Spezialfrage zu dt. Sonderzeichen

Hier können Sie Ihre Fragen zum Thema Suchmaschinenoptimierung (SEO) / Positionierung stellen
Neues Thema Antworten
Pyrate
PostRank 1
PostRank 1
Beiträge: 7
Registriert: 14.05.2006, 23:16

Beitrag von Pyrate » 14.05.2006, 23:26

Hi,

ich hab schon das Forum durchsucht und gegoogelt. Aber nur Widersprüche, bzw. keine Lösung gefungen.

Ich baue meine Seite als XHTML 1.0 transitional auf. Mit dem Zeichensatz (meta charset=...) UTF-8

Die Sprache meiner Website ist deutsch.

Nun habe ich sowohl im title Tag als in den Meta Tags sowie im body Text Umlautbeinhaltende Keywords. Ich habe im Moment alles mit HTML Entities geschrieben also ä = & a u u m l ; usw.
Teilweise lasse ich die Sonderzeichen (wenn die Wörter aus der DB kommen) von php per utf8_encode selber kodieren. Schaue ich jetzt in meinen Quelltext (IE u. FF), dann sind die manuellen Umlauteingaben (vorwiegend im title und den meta) wie ich sie eingegeben habe als & u u m l ; Entities zu sehen. Der Browser macht daraus natürlich äöü... Die per php umgewandelten Sonderzeichen erscheinen im Quelltext als äöü also als Umlaute.

Soll ich jetzt für die SEO meine manuellen Entities rausnehmen und durch äöü in UTF8 kodiert ersetzen (=aufwand, da ich das per php machen muss, oder die ganzen Entities umschreiben muss)?
oder sollte ich die per php umgewandelten Zeichen in Entities schreiben?

Oder erkennen Suchmaschinen sowohl Entities als ä ü ö und die php utf8_encode als äöü an, so dass die Seite auch für Umlaute optimal optimiert ;-) ist???

Danke,

Pyrate

Anzeige von ABAKUS

von Anzeige von ABAKUS »

Content Erstellung von ABAKUS Internet Marketing
Ihre Vorteile:
  • einzigartige Texte
  • suchmaschinenoptimierte Inhalte
  • eine sinnvolle Content-Strategie
  • Beratung und Umsetzung
Jetzt anfragen: 0511 / 300325-0

Fluidum
PostRank 5
PostRank 5
Beiträge: 258
Registriert: 18.12.2005, 18:09

Beitrag von Fluidum » 14.05.2006, 23:36

Es sollte dabei nicht nur um Suchmaschinen gehen...

Setze die Zeichen korrekt in UTF-8 um und nicht wie im ISO Zeichensatz ü = ü

Google wird es richtig erkennen, aber die Browser nicht immer richtig!

Sprich: Mach es ordentlich und im reinen UTF-8

Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 14.05.2006, 23:37

Hallo Pyrate,

solange der Zeichensatz der Seite korrekt gesetzt ist, d.h. im HTTP-Header, kannst du sowohl Entities, als auch nicht codierte Zeichen benutzen.
Fluidum hat geschrieben:Google wird es richtig erkennen, aber die Browser nicht immer richtig!
Welcher Browser hat mit Entities Probleme?

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Pyrate
PostRank 1
PostRank 1
Beiträge: 7
Registriert: 14.05.2006, 23:16

Beitrag von Pyrate » 14.05.2006, 23:41

Wie folgt beginnt der Quellcode meiner Seite:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1 ... tional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>

<title>KW Titel</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

usw.

Meinst Du das? Ist das so i.O.? Erkennen die Suchmaschinen sowohl Entities (auch im title und meta tags) als auch die UTF8 äöü als äöü an? Machen Entities keine Probs?

Oder ist HTTP Header was anderes?

Ach ja: Ich baue meine Website mit statischen URLs auf aber mit groß und kleinschreibung, ist davon abzuraten, soll ich nur kleinschreibung verwenden?

Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 14.05.2006, 23:46

Hallo Pyrate,

die HTTP-Header werden vom Webserver gesendet, du kannst sie hier angucken: https://www.rexswain.com/httpsview.html Die Content-Type-Zeile sollte dem Meta-Tag entsprechen.

Ich benutze in URLs nur Kleinschreibung, prinzipiell ist das aber egal.

Pyrate
PostRank 1
PostRank 1
Beiträge: 7
Registriert: 14.05.2006, 23:16

Beitrag von Pyrate » 14.05.2006, 23:49

Bei mir kommt da folgende Meldung:

Rex Swain's HTTP Viewer
https://www.rexswain.com/httpsview.html
Parameters:
URL = https://neu.cheatmore.de
UAG = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
AEN =
REQ = GET ; VER = 1.1 ; FMT = AUTO
Sending request:
GET / HTTP/1.1
Host: ******
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Connection: close

• Finding host IP address...
Host IP address = ****
• Finding TCP protocol...
• Binding to local socket...
• Connecting to host...
• Sending request...
• Receiving response...

Maximum execution time of 15 seconds exceeded!
Done
Total elapsed time: 15 seconds

Was heißt das nun???

Danke für deine Hilfe

Pyrate
PostRank 1
PostRank 1
Beiträge: 7
Registriert: 14.05.2006, 23:16

Beitrag von Pyrate » 14.05.2006, 23:53

edvsb hat geschrieben:Hi, also das müßte so schon passen. Kannst aber notfalls noch mal den entsprechenden Header per PHP mitsenden. Mache ich aber auch nicht und alle Seiten laufen fehlerfrei.
kannst du sowohl Entities, als auch nicht codierte Zeichen benutzen
Ja und nein. Entities gehen zwar, sollten aber nicht benutzt werden bei UTF-8. Würde auch dem Sinn wiedersprechen.

Suche Dir einen Editor der UFT-8 verarbeiten kann und arbeite nur noch damit. Da werdern dann auch die entsprechenden Umlaute richtig gespeichert. Schreiben tust Du sie einfach al ö ä ü.

Zu der Groß- und Kleinschreibung kann ich Dir nichts sagen. Ich benutze es sowohl als auch.

Gruß, Ingo

Danke, aber:
Wie schreibe ich dann &? Oder gibt es dafür ein UTF8 Equivalent? Denn wenn ich & in den Text ohne & amp ; schreibe bekomme ich vom W3C Valid. eine Fehlermeldung...

Pyrate
PostRank 1
PostRank 1
Beiträge: 7
Registriert: 14.05.2006, 23:16

Beitrag von Pyrate » 14.05.2006, 23:55

Hi, also das müßte so schon passen. Kannst aber notfalls noch mal den entsprechenden Header per PHP mitsenden. Mache ich aber auch nicht und alle Seiten laufen fehlerfrei.
Wie wäre der php Code dafür?

Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 15.05.2006, 00:00

edvsb hat geschrieben:
kannst du sowohl Entities, als auch nicht codierte Zeichen benutzen
Ja und nein. Entities gehen zwar, sollten aber nicht benutzt werden bei UTF-8. Würde auch dem Sinn wiedersprechen.
Wenn er alle Sonderzeichen schon Entity-Codiert hat, braucht er sich nicht die Arbeit zu machen und es zu ändern.
Pyrate hat geschrieben:Wie schreibe ich dann &? Oder gibt es dafür ein UTF8 Equivalent? Denn wenn ich & in den Text ohne & amp ; schreibe bekomme ich vom W3C Valid. eine Fehlermeldung...
HTML-Sonderzeichen, d.h. <, >, &, etc. müssen weiterhin codiert werden.
Pyrate hat geschrieben:Wie wäre der php Code dafür?
header('Content-Type: text/html; charset=utf-8');

Mit Wannabrowser geht es, die Header sind:

Code: Alles auswählen

HTTP/1.1 200 OK
Date&#58; Sun, 14 May 2006 22&#58;48&#58;25 GMT
Server&#58; Apache/2.0.48 &#40;Linux/SuSE&#41;
X-Powered-By&#58; PHP/4.3.3
Transfer-Encoding&#58; chunked
Content-Type&#58; text/html
Zuletzt geändert von Christophe am 15.05.2006, 00:01, insgesamt 1-mal geändert.

Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 15.05.2006, 00:12

Wo wir schon beim Thema XHTML sind, es hilft das XHTML-Einmaleins von Christoph Schneegans und sein Validator.

marle
PostRank 5
PostRank 5
Beiträge: 212
Registriert: 24.02.2005, 15:25

Beitrag von marle » 15.05.2006, 07:55

eine Page im UTF-8
falls es weiterhilft

www.industrystock.com

Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 15.05.2006, 08:30

edvsb hat geschrieben:Der Sinn davon ist ja, dass auch User die Seite betrachten können, die den ISO-Zeichensatz nicht haben. Und die könnten die Entity nicht richtig anzeigen. UTF-8 könnten diese User sehr wohl. Also sollte man sich schon die arbeit machen und alles richtigstellen.
Oh, das wusste ich nicht. Kannst du mir ein Beispiel für deine Aussage geben? Ich kenne keinen Browser, der Entitites nicht darstellen kann.

Pyrate
PostRank 1
PostRank 1
Beiträge: 7
Registriert: 14.05.2006, 23:16

Beitrag von Pyrate » 15.05.2006, 13:02

edvsb hat geschrieben:Hi,

also erst mal. Ich habe ein anderes Tool zum Testen genutzt. Und, Dein Server liefert kein UTF-8 aus. Du hast als Content-Type text/html lieferst aber

Code: Alles auswählen

Content-Type&#58; text/xml
Edit: die Behauptung nehme ich zurück. Das liegt am Tool. Content-Type ist text/html

Ich hatte mal eine schöne Seite bezüglich UTF-8, finde sie aber geade nicht. das & schraibe ich momentan auch als & amp ; aber nur wegen dem Validator. Richtig wäre einfach &.

Bei utf-8 darf man specialchars verwenden, sollte aber auf html-entities verzichten. Nachtrag: bezogen auf deutsche Umlaute. Allgemeine bleiben weiterhin als Entity

Gruß, Ingo

Die hier habe ich aber mal auf die schnelle gefunden, wobei da ein paar fehler drinnen sind: https://blog.antikoerperchen.de/beitrag ... ntity.html[/b]
So, habe die Anweisungen jetzt soweit umgesetzt. Muss mir aber noch einen UTF8 Editor zulegen. Damit ich meine manuell eingegebenen Umlaute nicht als Entities habe. <, >, &, werde ich weiterhin als Entities schreiben - > richtig?
Gibt es sonst noch zeichen, die einer besonderen Beachtung bedürfen?

Jetzt ist mein Doctype ja XHTML 1 trans:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1 ... tional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" xml:lang="de" lang="de">
<head>

Ist es dann okay wenn ich mit php und im Meta tag content="text/html" habe?
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />


Im Blog steht nämlich:

Für HTML:
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">

Für XHTML:
<meta http-equiv="content-type" content="application/xhtml+xml;charset=utf-8" />

Muss ich das ändern? Auch in der php header funktion?


Ich habe in meiner .htaccess jetzt
AddCharset utf-8 .css .html .xhtml .php

Nun habe ich auch Dateien ohne .endung die ich wie folgt durch die .htaccess als php verarbeiten lasse (alle php Dateien senden den header() mit dem charset...)
<Files DATEINAME>
ForceType application/x-httpd-php
</Files>

Muss ich da auch noch was von wegen
<Files DATEINAME>
ForceType application/x-httpd-php
AddCharset utf-8
</Files>
einbauen? und wenn ja wie lautet die Syntax?


Danke für eure Hilfe, super!!!

Christophe
PostRank 5
PostRank 5
Beiträge: 246
Registriert: 13.12.2004, 13:07

Beitrag von Christophe » 15.05.2006, 15:37

Hallo Pyrate,

der Meta-Tag sollte auch bei XHTML <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> lauten. Eine Begründung gibt es auf der oben von mir zitierten Seite von Christoph Schneegans.

Auf im HTTP-Header würde ich Content-Type bei text/html lassen, es sei denn, du weiß genau was du da machst.

HTML-Sonderzeichen musst du so umwandeln:
'&' (kaufmännisches und) wird zu '&'
'"' (doppelte Anführungszeichen) wird zu '"'
''' (einfaches Anführungszeichen) wird zu '''
'<' (kleiner als) wird zu '<'
'>' (grösser als) wird zu '>'
Die anderen Entities würde ich an deiner Stelle so belassen meiner Meinung nach gibt es zur Zeit keine Nachteile.

Prinzipiell, da haben edvsb und Fluidum Recht, ist es aber sinnvoll Sonderzeichen nicht als Entities zu codieren, sondern utf-8.

Wenn du alle deine PHP-Dateien mit dem UTF-8-Header versehen willst, kannst du das in der php.ini machen:

Code: Alles auswählen

; PHP's built-in default is text/html
default_mimetype = "text/html"
default_charset = "utf-8"
Viele Grüße,
Christophe

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag