Website met meerdere talen
Nu heb ik ergens in mijn ontwerp een fout gemaakt.
De interne links zijn namelijk in het Nederlands.
Het domein adres bepaald de taal. (.nl is voor Nederlands en .com in voor Engels en later nog andere). Maar ik weet niet of ik hierop kan selecteren.
Edit:
Ik wil daar dit script voor gebruiken:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
if ($_SERVER['HTTP_HOST'] == 'stage-drapes.nl'){
$lang='NL';
}elseif ($_SERVER['HTTP_HOST'] == 'stage-drapes.com'){
$lang='EN';
}elseif ($_SERVER['HTTP_HOST'] == 'stage-drapes.es'){
$lang='ES';
}else{
$lang='EN';
}
$lang='NL';
}elseif ($_SERVER['HTTP_HOST'] == 'stage-drapes.com'){
$lang='EN';
}elseif ($_SERVER['HTTP_HOST'] == 'stage-drapes.es'){
$lang='ES';
}else{
$lang='EN';
}
Alle pagina's zijn geschreven zonder tekst, maar met variabelen die verwijzen naar de tekst in de taalbestanden.
Zo kan ik makkelijk foto's en layout aanpassingen maken zonder dat ik de scripts hoef aan te passen.
Maar nu zit ik te stoeien met de inerne links. zoals https://stage-drapes.nl/molton-gordijnen#
In het engels zou hij worden https://stage-drapes.com/molton-curatains#
Toch moeten ze verwijzen naar hetzelfde script. In dit geval $path."pages/molton.php; en moet hij het taalbestand $path."languages/".$lang."/molton.php openen.
Dit is de sql die ik heb gemaakt, hij is nog niet af. Want ik moet nog bedenken hoe hij het domein herkent en dan het juiste tekstbestand selecteerd.
Maar de grootste vraag die ik heb zijn de links op de website. Hoe zou ik dit moeten aanpakken.
dit is de structuur van de 2 tabellen:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
CREATE TABLE `website_podium_tekst` (
`id` int(11) NOT NULL,
`link` varchar(255) NOT NULL,
`tekst` varchar(255) NOT NULL,
`include` varchar(255) NOT NULL,
`metadescription` text NOT NULL,
`level` int(4) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
ALTER TABLE `website_podium_tekst`
ADD PRIMARY KEY (`id`);
ALTER TABLE `website_podium_tekst`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
COMMIT;
CREATE TABLE `website_podium_titel` (
`id` int(11) NOT NULL,
`internlink` int(11) NOT NULL,
`lang` varchar(2) NOT NULL DEFAULT 'NL',
`titel` varchar(100) NOT NULL,
`menu` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `website_podium_titel`
ADD PRIMARY KEY (`id`);
ALTER TABLE `website_podium_titel`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=129;
COMMIT;
`id` int(11) NOT NULL,
`link` varchar(255) NOT NULL,
`tekst` varchar(255) NOT NULL,
`include` varchar(255) NOT NULL,
`metadescription` text NOT NULL,
`level` int(4) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
ALTER TABLE `website_podium_tekst`
ADD PRIMARY KEY (`id`);
ALTER TABLE `website_podium_tekst`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
COMMIT;
CREATE TABLE `website_podium_titel` (
`id` int(11) NOT NULL,
`internlink` int(11) NOT NULL,
`lang` varchar(2) NOT NULL DEFAULT 'NL',
`titel` varchar(100) NOT NULL,
`menu` varchar(255) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `website_podium_titel`
ADD PRIMARY KEY (`id`);
ALTER TABLE `website_podium_titel`
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=129;
COMMIT;
En dit is de sql die ik wil gebruiken
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
$maintekst=false;
$mainqry = "
SELECT
website_podium_tekst.link,
website_podium_titel.internlink,
website_podium_titel.titel,
website_podium_tekst.include,
website_podium_tekst.tekst,
website_podium_tekst.metadescription,
website_podium_titel.id
FROM
website_podium_tekst
INNER JOIN
website_podium_titel
ON
website_podium_titel.internlink=website_podium_tekst.id
WHERE
website_podium_tekst.link=?
";
$stmt = $connection->prepare($mainqry);
$stmt->error;
$stmt->bind_param('s', $pagina);
$stmt->execute();
$result = $stmt->get_result();
$maindata = $result->fetch_assoc();
$stmt->close();
if(isset($customtitel) && $customtitel !=''){
$maintitel = $customtitel;
}elseif(isset($_GET['pagina']) && $_GET['pagina'] !='' && $maindata['titel'] !=''){
$maintitel = $maindata['titel'];
}else{
$maintitel = 'Stage & Drapes support';
}
include_once($path.'/languages/'.$lang.'/algemeen.php');
if($maindata['metadescription'] !=''){
$metadesc = 'Stage & Drapes support, '.$maindata['metadescription'];
}else{
$metadesc = 'Stage & Drapes support, het bedrijf voor al uw podia en theaterdoeken';
}
//bestand selecteren uit taal map
if(!empty($maindata['tekst'])){
$langfilename = $path."languages/".$lang."/".$maindata['tekst'];
if (file_exists($langfilename)){
include_once($langfilename);
}else{
$errorcode=102;
echo 'Het textbestand '.$langfilename.' is niet gevonden';
}
}
// Algemeen script selecteren uit paginamap
if(!empty($maindata['include'])){
$paginafilename = $path."pages/".$maindata['include'];
if (file_exists($paginafilename)){
include_once($paginafilename);
}else{
$main .='Het script '.$maindata['include'].' is niet aanwezig';
}
}
?>
$mainqry = "
SELECT
website_podium_tekst.link,
website_podium_titel.internlink,
website_podium_titel.titel,
website_podium_tekst.include,
website_podium_tekst.tekst,
website_podium_tekst.metadescription,
website_podium_titel.id
FROM
website_podium_tekst
INNER JOIN
website_podium_titel
ON
website_podium_titel.internlink=website_podium_tekst.id
WHERE
website_podium_tekst.link=?
";
$stmt = $connection->prepare($mainqry);
$stmt->error;
$stmt->bind_param('s', $pagina);
$stmt->execute();
$result = $stmt->get_result();
$maindata = $result->fetch_assoc();
$stmt->close();
if(isset($customtitel) && $customtitel !=''){
$maintitel = $customtitel;
}elseif(isset($_GET['pagina']) && $_GET['pagina'] !='' && $maindata['titel'] !=''){
$maintitel = $maindata['titel'];
}else{
$maintitel = 'Stage & Drapes support';
}
include_once($path.'/languages/'.$lang.'/algemeen.php');
if($maindata['metadescription'] !=''){
$metadesc = 'Stage & Drapes support, '.$maindata['metadescription'];
}else{
$metadesc = 'Stage & Drapes support, het bedrijf voor al uw podia en theaterdoeken';
}
//bestand selecteren uit taal map
if(!empty($maindata['tekst'])){
$langfilename = $path."languages/".$lang."/".$maindata['tekst'];
if (file_exists($langfilename)){
include_once($langfilename);
}else{
$errorcode=102;
echo 'Het textbestand '.$langfilename.' is niet gevonden';
}
}
// Algemeen script selecteren uit paginamap
if(!empty($maindata['include'])){
$paginafilename = $path."pages/".$maindata['include'];
if (file_exists($paginafilename)){
include_once($paginafilename);
}else{
$main .='Het script '.$maindata['include'].' is niet aanwezig';
}
}
?>
Toevoeging op 10/01/2022 18:26:51:
Als mijn denkwijze nou helemaal verkeerd is hoor ik dat ook graag. Ik kan nu nog alle kanten op.
Toevoeging op 10/01/2022 20:02:50:
dit topic mag weg, ik ga het tabel opnieuw opbouwen waarbij dit tabel website_podium_titel ook de link in zijn eigen taal krijgt.
Edit:
Nee, het topic zal vanzelf wel omlaag zakken.
Gewijzigd op 10/01/2022 21:04:20 door - Ariën -
Er zijn nog geen reacties op dit bericht.