Un script de l'excellent Xon qui permet de supprimer tous les tags de discussions qui sont utilisés moins de 10 fois.
Décompressez le .zip et téléverser le fichier à la racine de votre installation puis naviguez avec votre navigateur à son emplacement.
Un autre utilisateur à modifié la ligne de code (supprime les tags utilisés moins de 10 fois)
Pour celle-ci:
$tags = \XF::finder('XF:Tag')->where('use_count', '<', 10)->fetch();
Décompressez le .zip et téléverser le fichier à la racine de votre installation puis naviguez avec votre navigateur à son emplacement.
PHP:
<?php
ignore_user_abort(true);
$dir = __DIR__;
require($dir . '/src/XF.php');
XF::start($dir);
$app = XF::setupApp('XF\Pub\App');
if (\XF::$versionId != $app->options()->currentVersionId)
{
echo "XF upgrade is pending\n";
return;
}
print "loading tags:\n ";
$tags = \XF::finder('XF:Tag')->where('use_count', '<', 10)->fetch();
if ($tags->count())
{
print $tags->count() . " tags in about to delete in 10 seconds\n";
sleep(10);
print "Now deleting\n";
foreach($tags as $tag)
{
$tag->delete();
}
}
print "Running delete jobs\n";
$jobManager = $app->jobManager();
$maxJobRunTime = intval($app->config('jobMaxRunTime'));
do
{
$jobManager->runQueue(false, $maxJobRunTime);
$more = $jobManager->queuePending(false);
\XF::triggerRunOnce();
\XF::app()->em()->clearEntityCache();
print ".";
} while ($more);
print "\nDone!\n";
Un autre utilisateur à modifié la ligne de code (supprime les tags utilisés moins de 10 fois)
$tags = \XF::finder('XF:Tag')->where('use_count', '<', 10)->fetch();
Pour celle-ci:
- ne pas inclure les balises permanentes
- le nombre d'utilisations est inférieur à 5 ou moins
- ne pas inclure les tags utilisés pour la dernière fois au cours des 60 derniers jours.
$tags = \XF::finder('XF:Tag')->where('permanent', 0)->where('use_count', '<=', 5)->where('last_use_date', '<=', time() - (86400*60))->fetch();