WordPress: inserire la search box nel menu principale

Premessa

La search box fornita come widget standard nel tema di default di WordPress è senza dubbio un utile strumento per ricercare un determinato argomento all’interno del sito.

La naturale collocazione della search box è all’interno di una “plugin area”, tipicamente nella barra laterale destra. Esigenze di design potrebbero però portare alla necessità di eliminare la barra laterale e di conseguenza anche la search box. In questo caso, una possibile soluzione può essere quella di collocare la search box all’interno del menu di navigazione di WordPress. In questo modo, la search box rimane sempre a disposizione, senza occupare lo spazio della pagina.

Ecco quindi cosa bisogna fare per inserire la search box nel menu principale di WordPress.

Creare un tema “child”

La guida ufficiale di WordPress per gli sviluppatori (il “Codex”) contiene una pagina in lingua italiana che descrive come creare un tema child . Al termine di questa procedura nella cartella principale del tema personalizzato saranno disponibili i file functions.php e style.css.

Modificare il file functions.php

Modificare il file functions.php del tema child inserendo le seguenti istruzioni:

/***************************************************************************
* Inserisco la search-box nel menu
**************************************************************************/
function add_search_box( $items, $args ) {
  if ( $args->menu->name === 'Main menu' ) {
    $items .= "<li class='searchbox-position'>" . get_search_form( false ) . '</li>';
  }
  return $items;
}
add_filter( 'wp_nav_menu_items','add_search_box', 10, 2 );

Come si vede, la search box viene inserita nel menu dal nome “Main menu”. Questo è il nome attribuito, al momento della sua creazione,  al menu in cui si vuole inserire la search box:

Nome attribuito ad un menu WordPress al momento della sua creazione

Modificare il file style.css

La search box è stata collocata in un elemento html <li> a cui è stata associata la classe class='searchbox-position'. E’ possibile fare riferimento a questa classe (oltre a quelle native) per impostare lo stile della search box.

Tutte le modifiche allo stile della search box vanno inserite nel file style.css del tema child. Ecco un possibile esempio di formattazione:

.searchbox-position {
  float: right;
  margin-right: 2em;
}
input[type="search"].search-field {
  padding: 0.2em;
}
.search-form .search-submit .icon {
  height:16px;
  width:16px;
  top: -9px;
}

Plugin WordPress

Se non si desidera creare un tema child, è possibile utilizzare uno dei plugin gratuiti di WordPress che ottengono lo stesso effetto.
Tra questi, il plugin Search box on Navigation Menu 

CSS in WordPress: come aggiungere il proprio codice

Questo articolo descrive come  inserire codice personalizzato CSS in  WordPress. Presuppone che il lettore sia già in possesso delle nozioni di base su WordPress (compresi i concetti di theme e plugin) ed i fogli di stile CSS.

Gestione di base dei fogli di stile CSS in WordPress

Quando si è in visualizzazione di un post di WordPress, il layout della pagina  è affidato al foglio di stile “style.css” presente nella cartella principale del tema in uso. Ad esempio, in una installazione di WordPress che utilizza il tema predefinito “Twenty Seventeen”, il file style.css sarà contenuto nel percorso: /wp-content/themes/twentyseventeen/

Quando si è in modifica di un post, invece, la sua formattazione è demandata al foglio di stile editor-style.css che nel tema predefinito è collocato nel percorso: wp-content/themes/twentyseventeen/assets/css/

Se si desidera aggiungere il proprio codice CSS ad una pagina WordPress, in linea teorica si potrebbero modificare direttamente questi file. In pratica, però, ad ogni eventuale aggiornamento del tema, le modifiche apportate ai suoi file verrebbero sovrascritte dalla nuova versione. Per ovviare a questo problema, WordPress mette a disposizione il meccanismo del tema “child”: usando questo tema personalizzato, è possibile aggiungere i propri file CSS alla cascata dei fogli di stile.

Creare un tema “child”

La guida ufficiale di WordPress per gli sviluppatori (il “Codex”) contiene una pagina in lingua italiana che descrive come creare un tema child . Al termine di questa procedura nella cartella principale del tema personalizzato saranno disponibili i file functions.php e style.css.

Tra questi due file c’è una differenza: mentre il primo viene anteposto al corrispondente file del tema principale (“tema parent”), il secondo viene caricato da WordPress al posto di quello principale. Per evitare di dover riscrivere nel foglio di stile child tutte o quasi le regole del foglio di stile parent, quest’ultimo dev’essere inglobato nella cascata. WordPress sconsiglia di inserire nel foglio di stile “child” una regola CSS @import che richiami il foglio di stile “parent” e indica invece di inserire nel file functions.php il seguente codice:

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
?>

In questo modo, WordPress caricherà entrambi i fogli di stile: prima quello del tema parent e poi quello del tema child, in modo che le regole inserite in quest’ultimo possano eventualmente sovrascrivere quelle presenti nel file originale.

Modificare il file style.css del tema child

Per modificare il file style.css del tema child, si deve:

  1. accedere alla pagina di amministrazione e selezionare dal menu laterale le voci:  Aspetto > Editor

    css in wordpress - menu aspetto editor
    Menu amministratore, voci: Aspetto > Editor
  2. se si utilizza WordPress multisite si dovranno invece selezionare dal menu superiore le voci: I miei siti > Gestione network > Bacheca e poi le voci Aspetto > Editor nel menu laterale

    css in wordpress - menu multisite
    Menu superiore – voci: I miei siti > Gestione network > Bacheca
  3. selezionare il proprio tema child nel menu a tendina della opzione Selezionare il tema da modificare: in alto a destra nella pagina e cliccare sul’adiacente bottone Seleziona.

A questo punto è possibile inserire le regole CSS e salvare le modifiche cliccando sul bottone Aggiorna file in basso a sinistra nella pagina.

Utilizzare l’editor CSS incorporato

In alternativa al foglio di stile del tema child, è possibile inserire codice CSS personalizzato tramite l’editor CSS incorporato di WordPress. Per accedere all’editor si deve:

  1. aprire il Theme Customizer di WordPress selezionando dal menu laterale della pagina di amministrazione le voci:  Aspetto > Personalizza

    css in wordpress - menu aspetto personalizza
    Menu amministratore – voci: Aspetto > Personalizza
  2. sul menu laterale del pannello Personalizza aprire l’editor CSS selezionando la voce CSS aggiuntivo ed inserire le regole CSS direttamente nell’editor

    css in wordpress - css aggiuntivo
    CSS aggiuntivo del configuratore WordPress
  3. Salvare le modifiche cliccando sul bottone Pubblica in alto.  Cliccando sull’icona   a fianco del bottone Pubblica (icona che compare solo dopo aver fatto almeno una modifica al CSS) è possibile salvare una bozza delle modifiche o pianificarne la pubblicazione.

L’editor incorporato introduce il CSS personalizzato direttamente nella pagina HTML, come foglio di stile incorporato (con l’attributoid="wp-custom-css"), subito prima del tag di chiusura dell’elemento HTML head.

Vantaggi e svantaggi dei due metodi

I due metodi illustrati offrono vantaggi e svantaggi:

Metodo Vantaggi Svantaggi
style.css nel tema child Il file style.css può essere richiamato anche in modifica dell’articolo (oltre che in visualizzazione), in modo da ottenere una corretta anteprima dell’articolo. Per vedere l’effetto della modifica bisogna spostarsi sulla pagina interessata e ricaricarla.
editor CSS incorporato di WordpPress Le modifiche applicate vengono visualizzate immediatamente nella pagina che occupa la parte destra dello schermo. Se in modifica dell’articolo si vuole ottenere una esatta anteprima dello stile CSS, le variazioni devono essere duplicate nel file editor-style.css

Un buon compromesso tra i due metodi può essere quello di testare il CSS personalizzato utilizzando l’editor incorporato e, una volta raggiunto l’effetto desiderato, tagliare il codice CSS e incollarlo nel file style.css del tema child.

Il plugin SiteOrigin CSS

In WordPress sono disponibili dei plugin che permettono di inserire CSS personalizzato. Tra questi si distingue, con oltre 200.000 installazioni attive, il plugin di SiteOrigin SiteOrigin CSS . Questo plugin permette la visualizzazione in tempo reale delle modifiche inserite (come l’editor CSS incorporato) e fornisce altre comode funzioni, come la possibilità di cliccare sul punto della pagina che si vuole personalizzare ed ottenere in automatico il selettore della regola CSS. Le modifiche vengono salvate nel file
wp-content/uploads/so-cc/so-css-nome_del_tema.css che viene aggiunto automaticamente alle pagine di WordPress come foglio di stile esterno.

Anche in questo caso è possibile tagliare il codice CSS stabile e incollarlo nel file style.css del tema child.

Come integrare style.css nell’editor TinyMCE

Per aggiungere il file style.css ai fogli di stile utilizzati dall’editor TinyMCE di WordPress si deve inserire la seguente riga di codice nel file functions.php (del tema child):

add_editor_style( 'style.css' );

Se si vuole aggiungere anche l’eventuale file generato dal plugin SiteOrigin CSS il codice diventa (nel caso del tema Twenty Seventeen):

add_editor_style( 
    array( 
      'style.css', 
       '../../uploads/so-css/so-css-twentyseventeen.css'
    )
);

Per gli sviluppatori di temi (parent) WordPress, l’aggiunta di file CSS all’editor TinyMCE è un po’ più complessa, perché bisogna prevedere che l’utilizzatore del tema sviluppi un tema child. Per approfondimenti vedere i link alle pagine del Codex nel prossimo paragrafo.

Pagine utili del Codex WordPress

Argomento Pagina del Codex
cosa sono le theme features https://codex.wordpress.org/Theme_Features
la theme feature Editor Style https://codex.wordpress.org/Editor_Style
funzione add_editor_style https://developer.wordpress.org/reference/functions/add_editor_style/
 funzione apply_filters( 'mce_css', string $stylesheets ) https://developer.wordpress.org/reference/hooks/mce_css/

https://codex.wordpress.org/Plugin_API/Filter_Reference/mce_css
(in questa pagina vedere anche i paragrafi “See also” e “Related”)

generatore di snippet per le theme features https://generatewp.com/theme-support/

XAMPP nuovo concetto di sicurezza ed errore “403 accesso proibito”

La premessa

Hai appena installato l’ambiente XAMPP sul tuo server Linux Ubuntu e ti accingi ad accedere al database MySQL tramite l’applicazione web phpmyadmin.

Ci sono due scenari possibili:

  • hai installato l’Ubuntu Desktop e quindi hai a disposizione un ambiente grafico. In questo caso è sufficiente avviare Firefox, inserire http://localhost/phpmyadmin nella barra degli indirizzi e premere invio.
    Come risultato si otterrà la pagina principale di phpmyadmin, come atteso.
  • hai installato XAMPP su Ubuntu Server e non hai un ambiente grafico. “Poco male -pensi- accederò a phpmyadmin dal  mio computer client inserendo nella barra degli indirizzi l’IP del mio server Linux”. Apri un browser sul tuo computer e (ammettendo che nella rete locale il server abbia IP: 192.168.1.10) inserisci l’indirizzo: http://192.168.1.10/phpmyadmin
    E qui nasce il problema.

Leggi tutto “XAMPP nuovo concetto di sicurezza ed errore “403 accesso proibito””

Sintassi delle regole CSS

Una regola CSS è formata da un selettore e una o più dichiarazioni, separate dal carattere “;” e racchiuse tra parentesi graffe. Nel seguente esempio:

h1 { 
  text-align: center; 
  color: rgb(0, 0, 255);
}
  • h1 è il selettore
  • il carattere “{” apre il blocco delle dichiarazioni
  • text-align: center; e color: rgb(0, 0, 255); costituiscono due dichiarazioni
  • il carattere “}” chiude il blocco delle dichiarazioni

Ogni dichiarazione è formata da:

  • nome della proprietà (es. text-align)
  • carattere “:
  • valore della proprietà (es. center)
  • carattere “;” (può essere omesso nell’ultime dichiarazione)

Articoli correlati

Sintassi degli elementi HTML

Sintassi degli elementi HTML

Gli elementi HTML

Un elemento HTML è tipicamente composto da un tag di apertura, un contenuto ed un tag di chiusura. Nel seguente esempio:

<h1>Sintassi degli elementi HTML</h1>
  • <h1>costituisce  il tag di apertura
  • Sintassi degli elementi HTML è il contenuto dell’elemento
  • </h1> costituisce il tag di chiusura ed è formato dal carattere  di barra “/” ( “slash”) seguito dal nome del tag di apertura.

Leggi tutto “Sintassi degli elementi HTML”

Integrare SASS in NetBeans

In questo post vedremo come installare SASS in ambiente Ruby per Windows, per poi integrarlo con l’IDE NetBeans.

Installare Ruby e SASS (in ambiente Windows)

Sul sito rubyinstaller.org è possibile scaricare la versione più aggiornata di Ruby per Windows a 32 e a 64 bit (la 2.2.2 ad agosto 2015). Eseguire l’installazione, avendo l’unica accortezza di evitare path contenenti spazi (fig. 1).

fig.1 - Pannello di opzioni visualizzato dall'installazione di Ruby
fig.1 – Pannello di opzioni visualizzato dall’installazione di Ruby

Al termine dell’installazione, l’elenco dei programmi comprenderà il prompt dei comandi con Ruby (fig. 2).

fig.2 - Link al prompt dei comandi con Ruby
fig.2 – Link al prompt dei comandi con Ruby

Lanciare il prompt dei comandi con Ruby, quindi digitare il comando per il download e l’installazione di SASS (fig. 3):

gem install sass
fig.3 – Comando di installazione di SASS in ambiente Ruby.

Per verificare l’esito della installazione digitare il comando:

sass -v

(ovvero: visualizza la versione di SASS installata). Si otterrà una stringa di testo simile alla seguente (fig. 4):

Sass 3.4.17 (Selective Steve)
fig.4 - Comando di visualizzazione della versione SASS installata.
fig.4 – Comando di visualizzazione della versione SASS installata.

A questo punto SASS è disponibile sul computer ed è possibile eseguire la compilazione da riga di comando.

Integrare SASS in NetBeans

Anche l’integrazione di SASS in NetBeans risulta molto semplice. Seguire i passi elencati di seguito, facendo riferimento alle figure associate:

  1. Aprire NetBeans, aprire un progetto e selezionare la voce di menu: File > Project Properties (<nomeProgetto>)
  2. Selezionare la categoria “CSS Preprocessor” (fig. 5)
  3. Cliccare sul bottone “Configure Executables…” in alto a destra (sempre fig. 5)
  4. Nel campo “Sass path” inserire il percorso completo del file “sass.bat”, che è collocato nella sottocartella “bin” del path specificato in fase di installazione di Ruby (fig. 1). Vedere fig. 6 in merito alla compilazione del campo “Sass path”.
  5. Uscire cliccando sui bottoni “OK” e “OK”.
fig.5 - Proprietà progetto in NetBeans
fig.5 – Proprietà progetto in NetBeans
fig.6 - Opzioni per i CSS preprocessor in NetBeans
fig.6 – Opzioni per i CSS preprocessor in NetBeans

A questo punto è possibile compilare i file .scss in NetBeans.

Se si mantiene l’opzione “Compile Sass File on Save” (vedere fig.5) i file .css verranno rigenerati ad ogni salvataggio dei corrispondenti file .scss.

Di default è previsto che i file .scss siano inseriti nella cartella scss nella root del progetto e i file .css compilati nella cartella css, sempre nella root del progetto. Se si utilizzano cartelle diverse, indicarle nelle opzioni del preprocessore (fig. 5).

Come avviare uno script con un doppio click sul file .sh

Questo post descrive il procedimento da adottare per poter avviare uno script -in ambiente grafico di Linux Ubuntu- facendo doppio click sul file .sh che lo contiene.

Le Shell

In ambito informatico, la shell è l’interfaccia testuale che permette di eseguire i comandi del sistema operativo. In ambiente Windows la shell è conosciuta come “prompt dei comandi” e viene avviata con il programma cmd.exe. Negli  ambienti basati su UNIX (o Unix-based: Unix, Linux, macOS) , la shell viene avviata con il programma “terminale”. La shell più diffusa in questi ambienti è la Bash.

La shell di Ubuntu
Fig. 1 – Bash Shell di Ubuntu, la distribuzione più diffusa di Linux

Lo shell scripting

In tutte le shell (più diffuse) è possibile eseguire degli script, ovvero delle sequenze di comandi salvate all’interno di file di testo: nella riga di comando della shell, invece che inserire direttamente un comando, si può richiamare il file contenente lo script ed eseguire in questo modo la sequenza di comandi in esso contenuti.

In ambiente Windows è possibile, ad esempio, inserire i comandi in un file .bat e poi richiamare il file inserendone il nome nella riga di comando.

In ambiente Unix-based, quando si fa riferimento ai file di testo che contengono comandi del sistema operativo, si utilizzano -praticamente come sinonimi- i termini: Bash shell script, Bash script, shell script, o anche solo script. Questi file sono caratterizzati dall’estensione .sh e vengono eseguiti richiamandone il nome nella riga di comando della shell. Poiché è necessario indicare non solo il nome dello script, ma anche l’intero percorso della directory che lo contiene, è prassi normale il posizionarsi su tale directory e poi premettere “./” (ovvero “la directory corrente”) al nome file.

Avviare uno script tramite doppio click sul file .sh

Se si utilizza l’ambiente grafico di Ubuntu, può risultare comodo avviare uno script facendo doppio click sul file .sh che lo contiene, anziché aprire un terminale, posizionarsi sulla directory dello script e poi inserirne il nome nella linea di comando.
Vediamo come fare:

1. Assicurarsi che il file di testo sia eseguibile

    • aprire la finestra delle proprietà del file facendo click sul file col tasto destro del mouse e poi scegliendo la voce “proprietà” (in alternativa, selezionare il file con un click e poi premere la combinazione di tasti “control+i”);
    • selezionare il tab “Permessi”;
    • mettere il segno di spunta sull’opzione “Esecuzione”;
    • chiudere la finestra delle proprietà.
La finestra delle proprietà del file
Fig. 2 – Finestra delle proprietà del file selezionato

2. Verificare come il file manager tratta i file di testo eseguibili

  • aprire il programma di gestione dei file Nautilus (“File”);
  • nella barra superiore della finestra principale, cliccare col destro sulla voce “File”, quindi scegliere l’opzione “Preferenze”;

    Apertura delle preferenze di Nautilus
    Fig.3 – Apertura delle preferenze di Nautilus (“File”)
  • il sistema visualizza la finestra delle preferenze; cliccare sul tab “Comportamento”, quindi selezionare l’opzione “Chiedere cosa fare” della voce “File di testo eseguibili”.

    Tab Comportamento della finestra Preferenze di Nautilus
    Fig. 4 – Tab Comportamento delle Preferenze di Nautilus

3. Avviare lo script

  • A questo punto, se si fa doppio click sul file .sh che contiene lo script, il sistema aprirà una finestra per chiedere all’utente come comportarsi con il file.

    Box di richiesta a seguito del doppio click su un file di testo eseguibile
    Fig. 5 – Box di richiesta a seguito del doppio click su un file di testo eseguibile
  • Cliccare sull’opzione “Esegui nel terminale”. Il sistema aprirà una shell ed eseguirà lo script.

Risorse ulteriori

Altre utili informazioni su come eseguire uno script sono presenti in questo articolo.

I dolori del giovane Franzl

“I dolori del giovane Franzl – proprio ai suoi dolori vogliamo qui brevemente accennare – raggiunsero la massima intensità quando il tredicenne studente, passeggiando per il parco municipale, scoprì davanti a una grande aiuola un piccolo cartello che diceva: È vietato calpestare le aiuole. I trasgressori saranno puniti a norma di legge.

La scritta fece rinascere in lui un problema che da qualche tempo gli si presentava con una certa frequenza; ancora una volta la situazione sembrava offrirgli una sola possibilità di scelta fra due alternative che gli parevano entrambe inaccettabili: da un lato quella di ribadire la sua libertà nei confronti dell’imposizione autoritaria calpestando l’aiuola, col rischio tuttavia di essere colto in flagrante; dall’altro quella di conformarsi al divieto. Ma la sola idea di dover ubbidire a un meschino cartello lo faceva insorgere contro la vigliaccheria di una simile sottomissione.

Si soffermò a lungo, indeciso sul da farsi, finché inaspettatamente – giacché non gli era mai capitato di fermarsi a osservare i fiori – gli venne un’idea completamente diversa: i fiori sono meravigliosi.

Caro Lettore, la storiella Le sembra banale?

Non saprei risponderLe se non che il giovane Franzl Wokurka la pensava diversamente. L’intuizione si abbatté su di lui con la forza di un’onda che, infrantasi, lo trascinasse potentemente nel riflusso.

Improvvisamente si rese conto della possibilità di un’alternativa alla sua visione del mondo: io voglio che l’aiuola sia così com’è; io voglio questo incanto; io sono la mia stessa legge, la mia stessa autorità, andava ripetendosi.

E d’un tratto il divieto non ebbe per lui più significato alcuno; il contrasto manicheo sottomissione-ribellione si era dissolto nel nulla. Il senso di ebbrezza fu di breve durata, ma qualcosa di fondamentale era comunque cambiato; ora vibrava in lui una sorta di melodia sommessa, quasi impercettibile, che tuttavia si faceva ben udibile nei momenti in cui il mondo rischiava di sprofondare nella palude dell’aut-aut!

Dopo aver preso la patente, per esempio, guidando allacciava sempre le cinture di sicurezza, perché lui stesso aveva deciso che si trattava di una ragionevole misura cautelativa. E quando, nel giro di breve tempo, si aprì la controversia se lo Stato avesse o no il diritto d’imporre al cittadino l’uso delle cinture, i vari aspetti della contesa lo lasciarono del tutto indifferente. Lui ne era al di fuori”.

Fonti

Il brano è tratto dal libro “Di bene in peggio – Istruzioni per un successo catastrofico” di Paul Watzlawick, Ed. Feltrinelli pagg.31-32.

L’immagine ritrae un angolo dei giardini botanici di Villa Taranto, a Pallanza, in provincia di Verbania.

 

Come utilizzare GIT via SSH

Premessa

Questo post descrive come ho attivato il protocollo SSH su register.it per poter utilizzare il software di controllo di versione GIT sul mio sito WordPress.

Perché utilizzare WordPress con GIT

Quando si utilizza un ambiente di sviluppo per un sito WordPress, prima o poi si incorre nella necessità di riportare non solo le nuove modifiche dallo sviluppo alla produzione, ma anche gli aggiornamenti fatti direttamente in produzione, come le nuove release di WordPress, temi e plugin, nell’ambiente di sviluppo (unitamente alle variazioni al database).

Un modo per gestire la bidirezionalità degli aggiornamenti può essere quello di utilizzare il software per il controllo di versione GIT.
Per poter eseguire i comandi GIT sull’host di produzione è necessario aprire una shell testuale (detta bash) tramite il protocollo SSH. Vediamo come fare.

Predisporre l’host di produzione all’uso di SSH

Per chi si utilizza register.it per l’hosting del proprio sito web, per poter attivare il protocollo SSH è necessario acquistare l’hosting (nel mio caso Linux) “advanced”; costa un po’ di più, ma permette di gestire fino a 10 diversi domini, invece dei 5 permessi dall’hosting “base”.
Una volta acquistata l’opzione “advanced”, nel pannello di controllo compare la voce “Accesso SSH”, che permette l’accesso alla pagina di configurazione di SSH:

Voce "Accesso SSH" del CPanel di register.it
Voce “Accesso SSH” del CPanel di register.it

Nella pagina di configurazione sono indicati il nome dell’host e della porta per la connessione SSH e si viene subito avvisati che l’accesso via password non è consentito, mentre è consentito quello via chiave.

Ciò significa che deve essere generata una coppia di chiavi, di cui una (detta “pubblica”) rimane sul server e una (detta “privata”) dev’essere copiata sul computer client, ovvero quello che deve accedere via SSH all’host (per maggiori informazioni sulle chiavi pubbliche/private vedere cos’è la crittografia asimmetrica).

  • Per generare le chiavi, cliccare sul bottone “Gestisci chiavi SSH” in fondo alla pagina.
  • Il sito apre la nuova pagina “Gestisci chiavi SSH” in cui si deve cliccare su “Genera una nuova chiave”.
  • Il sito apre la nuova pagina “Generazione di una chiave pubblica” in cui si deve inserire:
    • il nome della chiave (il valore predefinito è “id_rsa”, io utilizzo “id_rsa_2048_nomeutente” (dove nomeutente è l’utente che utilizzo per accedere all’hosting linux);
    • una password sicura (in terminologia SSH “passphrase”), che deve essere ripetuta nel campo successivo della form e salvata in un cassetto protetto della propria scrivania (si è caldamente invitati a utilizzare il generatore di password presente nella pagina);
    • il tipo e la lunghezza della chiave che sarà generata (io lascio i valori predefiniti RSA e 2048).
  • Infine, cliccare sul bottone “Genera chiave” per ottenere la coppia di chiavi pubblica/privata, che vengono salvate nella cartella “.ssh” nella root del proprio sito.
  • Il sito fornisce una pagina con l’esito dell’operazione; cliccare su “”indietro”.
  • Il sito ritorna sulla pagina “Gestisci chiavi SSH”, dove adesso compaiono i nomi delle due chiavi generate.
  • Nella sezione “Chiavi pubbliche” cliccare sul link “Gestione” a destra della chiave, quindi il bottone “Authorize” nella nuova pagina e infine il bottone “Indietro” dopo la risposta “Per la chiave “id_rsa_2048_nomeutente.pub” è stata concessa l’autorizzazione”.
  • Il sito ritorna sulla pagina “Gestisci chiavi SSH”, dove adesso a destra del nome della chiave compare la scritta “authorized”.

Predisporre il computer client all’uso di SSH

Si deve ora configurare il client per accedere all’host via SSH e poter digitare i comandi di GIT. Innanzitutto si deve scaricare la chiave privata sul proprio computer.

  • Nella sezione “Chiavi private” cliccare il link “Visualizza/scarica” in fondo a destra nella riga della chiave.
  • Il sito apre la pagina  “Visualizza o scarica chiavi SSH”. Cliccare il bottone “Scarica chiave” e salvare la chiave “id_rsa_2048_nomeutente” in una cartella sicura (ovvero di cui viene tenuto un backup) del proprio computer.
  • Salvare anche la chiave in formato .ppk (viene utilizzata dal tool puTTY, trattato più avanti): inserire nell’apposito campo la password generata in precedenza (la passphrase) e cliccare su  “Converti”.
  • Il sito apre una pagina con visualizzata la chiave in formato .ppk; cliccare su “Scarica chiave” e salvare la chiave .ppk nella stessa cartella sicura dove è stata salvata la chiave privata, quindi cliccare su “Torna a gestisci chiavi”.

Si deve ora configurare un client SSH. il software più diffuso a questo scopo in ambiente Windows è il tool gratuito puTTY,  scaricabile da qui sia a 32-bit che a 64-bit. Dopo aver scaricato ed installato puTTY è necessario configurarlo, impostando le seguenti opzioni:

  • Sezione “Session”: impostare il nome e la porta dell’host (quelli indicati nella pagina di configurazione sul sito di produzione):
  • Sezione “Connection > Data”: impostare lo username per l’Auto-login (lo stesso utilizzato per accedere al CPanel sul sito di produzione). Dato che l’autenticazione è fatta via chiave, il nome utente serve solo ad indicare all’host a quale directory accedere.
  • Sezione “Connection > SSH > Auth”: inserire il nome della chiave .ppk scaricata in precedenza, completo dell’intero path:
  • Tornare alla sezione “Session”, inserire un nome per la sessione appena configurata nel campo “Saved session” (io inserisco un mnemonico dell’host di produzione, ad esempio “register.it”) e cliccare sul bottone “Save” (per le sessioni successive, cliccare su “Load”, per ricaricare i parametri).

Per avviare una sessione, cliccare sul bottone “Open”. puTTY apre una bash nella quale va inserita la password con cui si è generata la chiave (“passphrase”). L’host restituisce il prompt “~” (ambiente Linux), che indica che si è posizionati nella home dell’utente. Ora è sufficiente spostarsi sulla cartella che contiene la root del proprio sito e digitare i comandi GIT.

Accedere al repository GIT sull’host di produzione da NetBeans

Dopo averlo inizializzato sull’host di produzione, il repository GIT deve essere clonato sul computer utilizzato per lo sviluppo. Se si utilizza l’IDE NetBeans, questa operazione si può eseguire selezionando sul menu principale le voci Team > Remote > Clone. NetBeans apre una form per l’accesso al repository di produzione. Compilare i diversi campi come indicato di seguito:

  • Repository URL – inserire il valore: ssh://nomehost:porta/~/cartella
  • Username – inserire il nome utente utilizzato per accedere al CPanel
  • Private Key File – inserire il nome della chiave privata (non quella con suffisso .ppk) scaricata in precedenza, completo dell’intero path
  • Passphrase: inserire la passphrase
  • Clone into: inserire il path locale che conterrà il progetto di sviluppo (dev’essere una directory vuota)

Cliccare sul bottone “Successivo”, quindi compilare le form seguenti. Al termine, NetBeans crea una copia del repository in locale.

A questo punto è possibile trasferire le modifiche dallo sviluppo alla produzione e viceversa, tramite i comandi di GIT.

Scienza e fede

Ho da poco terminato di leggere il libro “Origin” di Dan Brown, in cui viene ripreso il tema della contrapposizione tra scienza e fede nella spiegazione dell’origine della vita. Contrapposizione che riguarda anche gli altri stupefacenti “momenti di discontinuità” della storia: come è nato l’universo? Ma soprattutto, dato che ci tocca direttamente, come è nata la specie umana (ovvero la vita intelligente)?

Su quest’ultimo aspetto, ovvero l’evoluzione umana, ci sono i sostenitori del creazionismo (l’uomo è stato creato da Dio) e i sostenitori dell’evoluzionismo (l’uomo discende dalla scimmia).

Ci sono prese di posizione discutibili da ambo le parti, ma ciò che io trovo  particolarmente “originale” in questo dibattito è il fatto che i secondi trattino i primi da ingenui (“ma come, credi ANCORA in Dio?”), mentre, a mio giudizio, è molto più ingenuo pensare che l’Uomo sia frutto di una modificazione genetica. E spiego il perché. Leggi tutto “Scienza e fede”