2016-08-01 30 views
0

Ich habe ein einfaches CMS Ich versuche, mich selbst zu bauen, aber ich bin stecken in der Gestaltung der Struktur der Datenbank.Entwerfen einer Datenbank für ein einfaches mehrsprachiges CMS

Ich habe 3 Tabellen in meiner Datenbank: Inhalte, Bilder, SEO (und ich werde ein Blog laterly)

Meine Frage ist, dass über SEO-Tabelle. Ich versuche seo Tisch für beide Seiten und Bilder zu verwenden (für Alt-Tags)

Allerdings brauche ich nur seo Titel und seo Beschreibung für Seiten und seo Titel für Bilder. Ist es besser, es in 2 Tabellen wie images_seo und page_seo zu trennen? Ich werde ungefähr 10 Seiten (x3 Sprachen) aber mehr als 200 Bilder haben. Was ist der richtige Weg?

Mein Inhalt Tabelle wie folgt aussieht:

---------------------------------------------------- 
ID | content_id | page_id | lang_code | content_text 

Bilder Tabelle:

------------------------- 
ID | page_id | image_name 

Meine seo Tabellen wie das im Moment sieht

------------------------------------------------------------------------------------- 
ID | page_id | image_id | lang_code | type | page_title | seo_title | seo_desc 
------------------------------------------------------------------------------------- 
1 | 1 |  1 |  en | image |   | test image | 
2 | 1 |   |  fr | page | Homepage | test page | page seo desc 
+0

Anstatt Ihre Inhalte und Bilder Tabellen zu trennen - Sie könnten eine Tabelle und fügen Sie eine Spalte Typ, die die Struktur vereinfachen würde –

Antwort

0

Ich löse dieses Problem auf andere Weise auf meinem SEO-Inhaltsmodul. Jede Inhaltsseite enthält Dateien mit Bildern und Text mit Inhalten in Sprache. Wenn der Inhalt im WYSIWYG-Editor bearbeitet wird, verknüpfen Sie ihn mit Bildern, die in Text eingefügt wurden. Es ist, weil das gleiche Bild in verschiedenen Sprachen mit verschiedenen Alt-Tags verwendet werden kann oder das Bild auch übersetzt werden muss, wenn es Text enthält. So ist meine Struktur: Inhalt -> ({Inhalt in Sprache}, {Bilder})