Uno dei problemi più noiosi di dblog è legato al suo editor visuale che non permette il linkaggio assoluto delle immagini.
Mi spiego meglio: usando la funzione upload del pannello di controllo di dblog, nel momento in cui scriviamo l’articolo con l’editor visuale FCKeditor, per inserire un’immagine nell’articolo ci basterà cliccare sull’apposito tasto e scegliere dall’elenco a tendina l’immagine. Penserà il sistema a leggere tutte le immagini disponibili contenute nella directory "Path_DirPublic" (che per molti di noi è /public/).
Il risultato in HTML sarà:
Seppur codice perfettamente funzionante, questo può creare problemi a chi legge il blog via feed. Su feedburner le immagini negli articoli del mio blog avevano un indirizzo del genere:
Indirizzo inesistente ed impossibilità del lettore di leggere al meglio, se non cliccando sul collegamento e portarlo all’articolo originale.
Per risolvere il problema basta fare un paio di cambiamenti a tre file di sistema del blog, evitando di toccare FCKeditor che è pur sempre un componente di parti terze .
I file necessario sono:
- inc_funzioni.asp (locato in /dblog/)
- articoli_aggiungi.asp (locato in /dblog/admin/)
- articoli_modifica.asp (locato in /dblog/admin/)
Aggiungiamo una funzione per il linking assoluto delle immagini
Nel file inc_funzioni.asp andiamo ad aggiungere la seguente funzione.
Dim RegEx
Set RegEx = New RegExp
RegEx.Pattern = "<img src="""&Path_DirPublic&"(.*?)"" alt=""(.*?)"" />"
RegEx.Global = True
RegEx.IgnoreCase = True
Risultato = RegEx.Replace(Stringa, "<img src=""http://" & Request.ServerVariables("HTTP_HOST") & Path_DirPublic & "$1"" alt=""$2"" />")
Set RegEx = Nothing
ImgToAll = Risultato
End Function
La funzione si occupa di cercare i tag relativi alle immagini linkate in maniera relativa e rimpiazza il tutto con il link assoluto. Badate bene, per funzionare il tutto i link alle immagini devono essere scritti con codice valido!
Dblog già di suo usa codice XHTML, per cui la chiusura del tag img l’avrete sempre. Quello che NON dovete dimenticare è aggiungere il tag alt (ovvero la voce Testo Alternativo nella finestra di aggiunta immagine dell’editor visuale).
Avrei potuto evitare la cosa, ma in questo modo siete costretti a scrivere codice valido e la cosa non fa mai male .
Usiamo la funzione
Nei file articoli_aggiungi.asp e articoli_modifica.asp cerchiamo la stringa:
E subito sotto aggiungiamo:
Il risultato dovrà essere questo:
FTesto = ImgToAll(FTesto)
Tutto qua! Da ora in poi le immagini verrano linkate con l’indirizzo assoluto e i lettori esterni riusciranno a leggerle senza problemi!
Faccine
Lo stesso problema si rileva anche per le emoticons. Basta adottare una soluzione molto simile a quella vista sopra.
Nella funzione SostituisciCaratteri(Testo, PermettiTag) abbiamo una serie di righe simili a questa:
Basta sostituire il tutto con righe di questo genere:
Dovrebbe essere tutto abbastanza intuitivo
seu site e’ muito bom, agradeço a todos por terem acessado àeste maravilhoso blog, para não dizer “o melhor” !!
Grazie per la dritta, l’ho installata senza problemi anche se ancora non ho verificato, ma non ho dubbi, che funzioni.
Salve,
ho eseguito tutte le modifiche al mio dblog, ma il link non è assoluto, resta sempre relativo. Devo modificare qualche altra impostazione? Grazie
@ Anonimo: rivedi il tutto, avrai dimenticato qualcosa…
Girovagando ho trovato le istruzioni per aggiornare FCKeditor e adesso faccio anche questa modifica, come suggerito nelle istruzioni 😀
Grazie davido :-*
Di niente tesoro :-*
In articoli_aggiungi.asp la riga è
FTesto = DoppioApice(SostituisciCaratteri(Request.Form("Testo"), "Si"))
Ovviamente è facilmente intuibile leggendo il codice, ma facendo una ricerca del testo al primo colpo mi è venuto il panico, non trovando la stringa dichiarata LOL
Detto una cazzata <_<
Scusate <_<
Visto cosa fa non aggiornare mai giorno per giorno? 😀
Il mio dblog era una quasi final…
Nono, ho sbagliato io a prendere il file ASP :doh:
Ho preso autori_aggiungi.asp invece di articoli_aggiungi.asp 🙁
Devo chiedere con fermezza che mi cambino il monitor al lavoro…oltre a prenotare una visita dall'oculista gh
uhm…
non mi funzionava…
poi ho "scoperto" che la stringa da incollare in inc_function va incollata prima del "%>"…
certo che sono proprio un geniaccio a sperimentare tutto senza prima leggermi un cavolo.
comunque grazie per il plug!!
[b]
bello
A me non funziona….. e ho controllato e ricontrollato il codice…. boh! 🙁