-
Notifications
You must be signed in to change notification settings - Fork 0
/
Update-XML-fields-of-articles.php
57 lines (54 loc) · 2.15 KB
/
Update-XML-fields-of-articles.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
<h1>Mise à jours de structure XML des articles.</h1>
<p>Il y a <?= count(glob('*.xml')) ?> fichiers XML dans le dossier.</p>
<p>Ce script ajoute aux fichiers les balises suivantes si manquantes:</p>
<ol>
<li><title_htmltag></li>
<li><thumbnail_alt></li>
<li><thumbnail></li>
<li><thumbnail_title></li>
<li><date_creation>(reprend la date dans le nom de fichier.)</li>
<li><date_update> (reprend la date dans le nom de fichier.)</li>
</ol>
<?php
$rewrite=false;
$i=0;
foreach(glob('*.xml', GLOB_NOSORT) as $file)
{
if(preg_match('#^(_?\d{4})\.((?:\d{3},|draft,)*(?:home|\d{3})(?:,\d{3})*)\.(\d{3})\.(\d{12})\.(.*)\.xml$#', basename($file), $capture)) {
$date = $capture[4];
}
if(is_readable($file)) {
$data = file_get_contents($file);
if( strpos( $data, 'title_htmltag' ) == false) {
$data = preg_replace("/<\/document>$/", "\t<title_htmltag><![CDATA[]]></title_htmltag>\n</document>", $data);
$rewrite=true;
}
if(strpos( $data, 'thumbnail_alt' ) == false) {
$data = preg_replace("/<\/document>$/", "\t<thumbnail_alt><![CDATA[]]></thumbnail_alt>\n</document>", $data);
$rewrite=true;
}
if(strpos( $data, 'thumbnail' ) == false) {
$data = preg_replace("/<\/document>$/", "\t<thumbnail><![CDATA[]]></thumbnail>\n</document>", $data);
$rewrite=true;
}
if(strpos( $data, 'thumbnail_title' ) == false) {
$data = preg_replace("/<\/document>$/", "\t<thumbnail_title><![CDATA[]]></thumbnail_title>\n</document>", $data);
$rewrite=true;
}
if(strpos( $data, 'date_creation' ) == false) {
$data = preg_replace("/<\/document>$/", "\t<date_creation><![CDATA[$date]]></date_creation>\n</document>", $data);
$rewrite=true;
}
if(strpos( $data, 'date_update' ) == false) {
$data = preg_replace("/<\/document>$/", "\t<date_update><![CDATA[$date]]></date_update>\n</document>", $data);
$rewrite=true;
}
if($rewrite==true){
++$i;
$file_handle = fopen($file, 'w');
fwrite($file_handle, $data);
fclose($file_handle);
}
}
}
echo '<p>Mise à jour des structures XML de <b style="color:tomato">'.$i.'</b> fichier(s) effectuée(s).</p>';