[RISOLTO] modificare id articolo da database
-
Buongiorno a tutti.
Ho necessità di modificare l'id di un articolo e ovviamente ho provato a farlo dal database.
Una volta modificato però, l'articolo sparisce dalla lista nel backend di joomla e devo riportarlo all'id nativo sul database per farlo riapparire.
Qualcuno ha mai provato un'operazione del genere?
Ho tentato sia modificando soltanto ID, sia entrambi (ID e ASSET ID)
Grazie
-
Ciao, parto col dirti che quello che vuoi fare è sconsigliatissimo da un milione di punti di vista diversi
Prima di tutto perchè le tabelle di com_content sono auto-increment (assegnano l'id in automatico) quindi se crei uno sfaso tra gli id veri e propri e gli id con increment rischi di crearti chiavi duplicate.
Poi perché Joomla ha un database relazionale dove gli id sono la chiave di tutto (quindi hai delle opzioni di un articolo le associ tramite id, che è univoco) quindi cambiare quell'ID cambia/cancella anche tutte le creazioni che joomla crea in fase di pubblicazione di un articolo.
Ci sono varie altre tabelle che devi cambiare all'interno del DB se vuoi che tutto funzioni, tipo la tabella "assets", o "associations" se sei in multilingua, content frontpage e rating se le usi ecc.. ecc..) quindi la modifica che fai deve essere fatta ovunque.Se proprio proprio proprio proprio devi fare una cosa del genere
il mio consiglio è di annotarti l'id "vecchio", fare una ricerca su TUTTO il database con phpmyadmin (o console sql) e cambiare quell'ID con quello nuovo ovunque lo trovi (oltre ovviamente a #_content), poi contorllare che l'asset_id sai correttamente collegato all'ID della tabella assets, altrimenti rischi che non vengano associati correttamente le ACL...
ps: fai un bel backup del db !
Ciao! -
Grazie mille.
Eviterò allora.Lo scopo era mantenere un ordine cronologico e sequenziale per alcuni articoli, solo che alcuni con data meno recente li pubblicherò più in là.
Meglio però evitare problemi. -
Tieni conto che data di pubblicazione e data di creazione sono modificabili a posteriori nella tab "pubblicazione" dell'articolo:
Poi quando sei nella lista degli articoli puoi cliccare sull'intestazione della colonna "Data di creazione" per ordinarli secondo quella data invece che per ID:
Ciao,
Gianluca -
Sì, lo so, però mi ritroverò articoli con data precedente, ma con ID successivo.
E poichè li tengo ordinati per ID, questo mi crea un po' di confusione. Però va bene così.
-
Puoi anche creare un placeholder e tenerlo spubblicato poi quando sarà il momento gli metti titolo e testo corretti e pubblichi, forse così riesci a mantenere un ordine più o meno stabile (però se devi fare modifiche a posteriori non riesci a farlo senza andare a mettere le mani nel db...)
-
Cosa intendi con placeholder?
A questo punto creo almeno il numero di articoli che mi serve e li lascio sospesi fin quando non li completo.
Grazie ancora
-
@mariarosaria quale sarebbe l'utilità di cambiare L'ID?
-
Sì, lo so, però mi ritroverò articoli con data precedente, ma con ID successivo.
E poichè li tengo ordinati per ID, questo mi crea un po' di confusione. Però va bene così.