Come fare ad avere i vocabolari sempre puliti?
Per esempio io utilizzo 2 query sul DB per scovare termini che risultano non associati a nodi. Una trova i nodi, l'altra invece trova le gerarchie.
Rimuovo questi nodi, ma mi sto accorgendo casualmente, che nel vocabolario esistono termini che non sono associati ai nodi e che non risultano dalle query.
Qui a seguire vi mostro le query. C'è un modo più efficace per scovare i termini non associati ai nodi?
select *
from `term_data`
where `vid` = 9
and `tid` not
in (
select `tid`
from `term_node`
)
limit 0, 15000
SELECT *
FROM `term_hierarchy`
WHERE `tid` NOT
IN (
SELECT `tid`
FROM `term_data`
)
LIMIT 0 , 15000
io non rinventerei la ruota
http://drupal.org/project/delete_orphaned_terms
Certified to Rock
Brutto questo colore verde x accettare una risposta!!!
Peccato! sul mio site di test, fallisce:
[cron] FAILSAFE (all): did not delete 4132/9536 terms[cron]
http://www.sanisapori.eu
Sul sito di produzione invece, la simulazione ha funzionato benissimo ed ho rimosso oltre 2700 termini.
La maggior parte erano tutti dei vecchi duplicati. Pensa quanto stavo messo male su un totate di oltre 9500 termini?!
Fare pulizia è fondamentale.
Non ho ancora verificato, ma mi domando... avrà anche rimosso i relativi alias?
http://www.sanisapori.eu