Utilisateur:Lea/mw-appendafter
Usage
Copier le script dans $MEDIAWIKI_ROOT/maintenance/
, modifier un peut le script, par exemple pour lui donner un nom d'utilisateur adapté, etc ... Puis,
cd $MEDIAWIKI_ROOT/maintenance/
php <nom du script> <chemin relatif vers le fichier>.wiki
pour insérer la page en fin de la page portant le nom du fichier (sans l'extension).
Code
- !/usr/bin/php
<?
define("MW_PATH", "../") ;
$working_dir = getcwd() ;
chdir(MW_PATH) ;
define("MEDIAWIKI", true) ;
require_once( 'includes/Defines.php' );
require_once ("./LocalSettings.php") ;
require_once ("includes/Setup.php") ;
$wgUser = User::newFromName( "PingouinMigrateur" ) ;
if (!$wgUser->isAllowed("edit")) {
echo "PingouinMigrateur can't edit\n" ;
exit ;
}
for($i = 1 ; $i < $argc ; $i++) {
$filename = $argv[$i] ;
// le titre sera le nom du fichier sans l'extension
$wgTitle = Title::newFromText(utf8_encode(preg_replace("~(.*/)?(.+)\.\w+$~","$2", $filename))) ;
$article = new Article($wgTitle) ;
$rev = Revision::newFromTitle( $wgTitle );
$oldtext = $rev->getText();
echo "Fichier [$filename] : " ;
$wgMyText = $oldtext."\n\n".join("",file("$working_dir/$filename")) ;
$article->updateArticle($wgMyText, utf8_encode("conversion de la documentation originale de Léa par HTML::WikiConverter"), false, false) ;
echo " [done]\n" ;
}
foreach ( $wgDeferredUpdateList as $key => $up ) {
$up->doUpdate();
}
$wgLoadBalancer->commitAll();
$wgLoadBalancer->closeAll();
?>
Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la Licence Publique Générale du projet GNU, Version 2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation. Pour plus d'informations consulter la GPL sur le site de GNU ou sa traduction non officielle. |