• User Attivo

    Eliminare i link a tutte le immagini

    Problema: ho tutte le immagini del mio blgo in wordpress che hanno un link alla immagine stessa.
    Vorrei rimuoverli a tutte le immagini, non una alla volta.
    Come posso fare?
    Tramite database, plugin o altro?
    Grazie.


  • ModSenior

    Devi vedere come viene creato il link, molto probabilmente è il tema che lo fa. Per verificarlo prova semplicemente ad attivare il tema di default "Twenty Ten" che sono sicuro non inserisce link alle featured images, se è quello vediamo di trovare dove il tuo tema inserisce il link.

    Valerio Notarfrancesco


  • User Attivo

    Mi speigo meglio.
    Quando su un post worpdress si inserisce una immagine esce fuori il pannello per inserire il titolo, la descrizione e la didascalia della foto. Subito sotto c'è una casella che serve per inserire il link alla immagine o alla pagina che l'immagina linka; c'è anche il pulsante che permette di non avere nessun link per l'immagine. Invece di premere questo pulsante migliaia di volte vorrei rimuovere a tutte le immagini il loro rispettivo link che ora hanno.
    E' un qualcosa che esula dal tema credo; anche perché devo fare questa operazione su parecchi blog wordpress.


  • ModSenior

    Hai ragione non può essere il tema, il link è memorizzato all'interno del contenuto del post, post_content della tabella wp_posts.
    Si può fare in automatico ma non ne sono capace; se invece l'immagine fosse sempre la stessa, ad esempio un logo come mi è capitato di fare, allora questo codice funziona:

    update wp_posts set post_content = replace(post_content,'<a href="http://www.sito.eu/wp-content/uploads/2010/06/logo.png"><img class="alignleft size-full wp-image-10" title="Logo" src="http://www.sito.eu/wp-content/uploads/2010/06/logo.png" alt="Logo" width="143" height="59" /></a>','<img class="alignleft size-full wp-image-10" title="Logo" src="http://www.sito.eu/wp-content/uploads/2010/06/logo.png" alt="Logo" width="143" height="59" />')
    Ho modificato questo tuo codice che avevi postato ad agosto:
    update [table_name] set [field_name] = replace([field_name],'[string_to_find]','[string_to_replace]')
    sostituendo string_to_find con l'intero blocco html del link e dell'immagine (in rosso) e string_to_replace con solo il codice html dell'immagine.

    Valerio Notarfrancesco


  • User Attivo

    Se l'immagine è sempre la stessa è facile, Valerio.
    Il problema è che sono tutte diverse.

    Esiste una variabile dedicata al link delle immagini che può essere eliminata nel codice php?

    Vado a vedere...


  • User Attivo

    Mi sto avvicinando alla soluzione seguendo la strada di trovare la variabile del link ed eliminarla o sotituirla con un valore nullo all'interno del codice del motore di wordpress.
    Pertanto ho trovato il punto esatto dove viene creato il link all'immagine che è nella pagina

    ..wp-includes/js/tinymce/plugins/wpeditimage/editimage.html

    Qui ho trovato il codice del form di cui parlavo prima dove si inserisce o toglie il link.

    [html]<td class="field">
    <input type="text" id="link_href" name="link_href" value="" size="60" /><br />
    <input type="button" class="button" onclick="wpImage.I('link_href').value='';" value="{#wpeditimage.none}" />
    <input type="button" class="button" id="img_url_current" onclick="wpImage.img_seturl('current')" value="{#wpeditimage.current_link}" />
    <input type="button" class="button" id="img_url_img" onclick="wpImage.img_seturl('link')" value="{#wpeditimage.link_to_img}" />
    <p class="help">{#wpeditimage.link_help}</p>
    </td>[/html]

    La variabile è link_href e questa riga permette di mettere un valore nullo e di tolgiere l'immagine

    <input type="button" class="button" onclick="wpImage.I('link_href').value='';" value="{#wpeditimage.none}" />

    Detto questo come posso fare in modo di rimuovere tutti i link, cioè di applicare questa riga in tutti i post del blog?


  • User Attivo

    Avete trovato una soluzione? Interessa anche a me 🙂


  • User Attivo

    Io no, ho rinunciato perché mi mancano parecchie basi e ho arginato il problema manualmente con l'aiuto di un plugin che elenca tutti i link del sito.


  • User Attivo

    Mi puoi dare il nome del plugin per favore


  • User Attivo

    Broken link checker.