Supporto » Varie ed eventuali » Inserire Codice PHP

  • Risolto willy70

    (@willy70)


    Carissimi,
    vi sottopongo una domanda che ahime’ non e’ certo nuova perche’ come
    si legge in oggetto avrei bisogno di inserire del codice PHP
    in una pagina wordpress.
    Vi spiego meglio la mia esigenza. Io devo produrre un contenuto dimanico
    in formato html tramite script (php o altro) che viene eseguito con cron,
    questo contenuto, un banale file html, lo vorrei visualizzare all’interno di una pagina
    gia’ definita e pubblicata nel sito web. Quindi avrei bisogno di inserire nella pagina
    web un programma php che vada a leggere questo file.
    Ovviamente lo script ed il file sono tutti sullo stesso server linux dove gira wordpress.
    Ho letto tanti , forse troppi, post soprautto in inglese dove si suggeriva
    in alcuni casi di usare un plugin ed in altri di usare “\<code\>”
    voi potreste dirmi cosa ne pensate ed eventualmente potreste postare un piccolo
    esempio ? Il file prodotto in automatico tramite cron dove dovrebbe risiedere ?

    Grazie mille !
    Saluti
    Willy

    • Questo topic è stato modificato 7 anni, 3 mesi fa da willy70.
    • Questo topic è stato modificato 7 anni, 3 mesi fa da willy70.
    • Questo topic è stato modificato 7 anni, 3 mesi fa da willy70.
Stai visualizzando 8 risposte - dal 1 al 8 (di 8 totali)
  • Moderatore Guido Scialfa

    (@wido)

    Ciao @willy70,

    Il consiglio è sempre quello di evitare di abilitare la possibilità di inserire codice php all’interno dell’editor. Anche il codice JavaScript è disabilitato, per ovvie ragioni di sicurezza.

    Quello che interessa a te è principalmente la creazione di uno shortcode.

    Puoi leggere maggiori info in

    Api Shortcodes – https://codex.wordpress.org/it:API_degli_Shortcode

    Uno shortcode in sostanza ti permette di scrivere il tuo script php e passargli dei dati direttamente dall’editor, in questo modo eviti di aprire falle non necessarie all’interno dell’ecosistema di WordPress.

    Puoi fare tutto quello che fa una funzione o altro di PHP non ci sono limiti.

    Chi ha creato la discussione willy70

    (@willy70)

    Grazie Guido info molto interessante provero’ sicuramente cosi’.
    Saluti

    • Questa risposta è stata modificata 7 anni, 3 mesi fa da willy70.
    Chi ha creato la discussione willy70

    (@willy70)

    Ciao,
    quindi se ho capito bene, potrei generare il file html tramite un programma eseguito con cron,
    poi devo creare uno shortcode con un nome a mia scelta e nella API di wordpress
    nella sezione function inserire codice php per leggere il file html e farlo ritornare
    a wordpress.

    //[read_html]
    function read_html_func( $atts ){
    …..
    return “…..”;
    }
    add_shortcode( ‘read_html’, ‘read_html_func’ );

    Corretto ?
    Secondo te in “giro” qualcuno ha gia’ fatto qualcosa di simile ?
    Grazie
    Willy.

    Moderatore Guido Scialfa

    (@wido)

    In pratica si, lo shortcode lo crei all’interno del file functions.php del tuo tema oppure ancor meglio nel child theme.

    Io preferirei fare un plugin per una cosa del genere perchè diventa portabile e meglio mantenibile.

    Ma è una scelta tua.

    Chi ha creato la discussione willy70

    (@willy70)

    Ciao Guido,
    io ho fatto cosi’, in function.php del tema ho aggiunto queste righe:

    function contakm_func() {
    ob_start();
    include(‘/var/www/html/contakm.html’);
    $var = ob_get_clean();
    return $var;
    }
    add_shortcode( ‘contakm’, ‘contakm_func’ );

    poi ho richiamato lo shortcode contakm dalla pagina interessata. In questo
    caso non si introducono problemi di sicurezza giusto ?
    Lo so magari la soluzione piu’ pulita era quella di creare un child theme pero’ io
    sono cosi’ bravo con WP e quindi ho preferito usare questa soluzioe diciamo piu’ veloce
    contando anche sul fatto che faro’ aggiornamenti di twentyeleven.
    Grazie !
    W.

    Moderatore Guido Scialfa

    (@wido)

    Ciao @willy70, scusa il ritardo nella risposta.

    Lo short-code è ok, solo una cosa riguardante il percorso del file.

    È vero che è meglio creare un child theme ed inserire lo short-code nel tema figlio e per crearlo non c’è molto da fare, se sei riuscito a fare uno short-code creare un child è una passeggiata. Leggi questa guida Creare un child theme in italiano.

    Riguardo al percorso del file, se crei un child-theme puoi inserire il file html direttamente all’interno della struttura del child sotto ad esempio ‘mio-child/includes/contakm.html’ che rinominerei comunque in ‘.php’ anche se non esegui codice al suo interno.

    Così facendo puoi avvalerti delle funzioni di WordPress get_theme_file_path() se usi la 4.7 oppure in alternativa get_stylesheet_directory() se la versione di WordPress è precedente.

    In questo modo renderai il codice più gestibile e portabile oltre che WordPress compliant.

    Chi ha creato la discussione willy70

    (@willy70)

    faro’ un tentativo grazie mille e… se hai ancora 5 minuti per me non di piu’ potresti darmi un suggerimento per questa pagina:

    http://atleticaumbertide.it/marcialonga/

    in fondo c’e’ un carosello, fatto con il plugin Logo Carousel, il problema sono le immagini un po’ piccole 140×100 px se vado oltre e le faccio piuì grando vengono tagliate , tu hai un’idea sul dove potrebbe essere il problema ? Plugin o Tema ?
    Grazie ancora per tutto !
    Saluti

    Chi ha creato la discussione willy70

    (@willy70)

    ho risolto facendo una piccola modifica al plugin.
    Saluti

Stai visualizzando 8 risposte - dal 1 al 8 (di 8 totali)
  • Il topic ‘Inserire Codice PHP’ è chiuso a nuove risposte.