® Davide Taddei - programmatore php per Magento e Joomla! SEO web marketing
realizzo moduli, componenti e plug-in di joomla li personalizzo e li sviluppo
mercoledì 4 maggio 2016
mercoledì 14 ottobre 2015
Attivare VirtueMart SEO senza utilizzare il suffisso nella pagina del dettaglio
Dalla versione 1.0 di Joomla! è consuetudine considerare Virtuemart l'estensione per fare e-commerce per eccellenza.
Oggi ci sono moltissime alternative (più o meno valide) ma VM ha indubbiamente ancora la community più forte, in particolare qui in Italia. Rispetto al passato è anche meglio integrato in Joomla! e dalla versione 2 è anche MVC e gestisce i campi come plugin per Joomla, cosa non trascurabile.
Al di là di questo VM ha ancora alcuni limiti che gli fanno preferire altri componenti o altre piattaforme.
Uno di questi limiti è la gestione delle url SEO. Infatti le impostazioni SEO impongono l'utilizzo di un suffisso alla pagina di dettaglio del prodotto (con il valore predefinito detail).
Ovviamente questo in taluni casi può non essere accettabile, soprattutto se si devono preservare delle vecchia e URL.
Nel caso non venga impostato un suffisso le opzioni SEO non funzioneranno.
L'unico modo di risolvere sarà quindi l'utilizzo di ulteriori componenti che permettano la riscrittura completa dell'url.
venerdì 9 ottobre 2015
MySQL non fa più accedere l'utente ROOT
Non riesco più a accedere a MySQL
Può capitare che la password di root di MySQL non funzioni più o che semplicemente sia stata smarrita.Al di là della classica domanda iniziale "Perchè!?" quella di cui vi preoccuperà nei minuti successivi la scoperta sarà "che fare????"
In questo post cercherò di fornire una risposta efficace alla seconda, lasciando a voi il piacere (!) di scoprire la risposta alla prima.
Reimpostare la password di root di MySQL
Per reimpostare la password di root di MySQL è sufficiente eseguire la stessa operazione che fate quando reimpostate quella del Vs. CMS preferito: tramite una query.Se nel caso di Wordpress, Drupal, Joomla, Magento o altro CMS che dir si voglia, basta accedere a phpMyAdmin o, per gli amanti del nero, alla riga di comando del terminale, per eseguire l'UPDATE di un campo, qui la situazione è apparentemente drammatica, perchè non si riesce ad accedere proprio alle tabelle i MySQL.
E' però possibile avviare MySQL senza i permessi (GRANT) per cui il problema "password" viene bypassato e sarà possibile eseguire la query di update per il reset della password.
Inutile dire che l'operazione NON VA ESEGUITA su di un server di produzione quando è accessibile da altri utenti.
Vediamo quindi i passaggi da eseguire da terminale:
1) fermate il servizio MySQL, su Debian / Mint / Ubuntu:
sudo service mysql stop2) avviate MySQL disabilitando le GRANT sulle tabelle:
sudo mysqld --skip-grant-tablesnon apparirà nessun prompt dei comandi, non potrete quindi aggiungere altri comandi e la schermata sembrerà bloccata. E' NORMALE
3) aprite una nuova istanza del terminale.
4) avviate mysql:
mysql start5) selezionate il database di sistema di MySQL:
use mysql6) eseguite una query di update:
update user set password=password('lamiapasswordsupersicura') where user='root'A questo punto potrete accedere nuovamente con l'utente root utilizzando la password che avete impostato, "lamiapasswordsupersicura" nel caso abbiate fatto copia/incolla della riga qui sopra.
Ora che potete di nuovo accedere ai vostri dati, avete tutto il tempo per tornare ad interrogarvi sull'origine del problema.
Per saperne di più leggete questo post nel forum di Ubuntu
mercoledì 7 ottobre 2015
Alcuni semplici ma utili script per Joomla!
Ottenere il nome del template corrente di Joomla!
Questo script può tornare utile quando si sta scrivendo il percorso di un css su Joomla e lo si sta caricando tramite il metodo addStylesheet() di JDocument.Ottenere il prefisso delle tabelle indicato nella configurazione in Joomla!
Questo script (da usare solo in debug) è particolarmente comodo quando si fa scrive la query di un modello nell'output della pagina e lo si vuole incollare in phpMyAdmin o Heidi per eseguire la query, in questo modo eliminerete gli antipatici cancelletti.Caricare un modulo di Joomla con il codice
Con questo script potrete caricare all'interno di qualsiasi file un modulo di Joomla! Vi consiglio di impostare la visibilità del modulo su Tutte le pagine e assegnare come posizione un non nome dedicato (in questo Gist "statistics"), in questo modo il modulo comparirà solo nelle pagine dove avrete inserito il codice.Effettuare il dump di un DB Joomla senza accedere a phpMyAdmin
In questo caso al posto del Gist inserisco direttamente il link allo script su GitHub.Basta copiarlo sulla root e lanciare lo script dalla barra dell'indirizzo, creerà automaticamente il dump in una cartella dedicata sulla root.
Provatelo e commentatelo su GitHub!
mercoledì 30 settembre 2015
Cosa aspettarsi di Joomla 3.5 e Joomla 3.6
Le novità di Joomla 3.5
La release 3.4 di Joomla risale ormai allo scorso febbraio ed è ormai iniziata la roadmap per la nuova versione 3.5Le idee sono tante vedremo quali saranno poi le nuove features effettivamente rilasciate :-)
Secondo l'articolo di Steve Burge di OSTraining.com questa è un'anteprima attendibile basata su (questa roadmap):
Override di tutto in Joomla 3.5
Uno degli obiettivi chiave di Joomla 3.5 è che tutto possa essere sovrascritto.Lo strumento per raggiungere questo obiettivo sarà, nelle intenzioni del team di sviluppo, di JLayout, (per saperne di più vedi questo articolo
https://www.ostraining.com/blog/joomla/custom-layouts/), ma potrebbero essere utilizzti altri strumenti come i motori di rendering PHP Laravel Blade o Twig.
Il solito problema sarà la retrocompatibilità, vogliamo scommettere?
Eliminazione dal core del componente com_messages
Il progetto di rimozione dei componenti dal core toccherà questa volta com_messages, che si potrà comunque scaricare dal proprio repository su GithubNuovo media manager per Joomla 3.5
Il nuovo media manager includerà queste funzionalità:- nuova interfaccia grafica (anche l'occhio vuole la sua parte)
- un upload manager
- tagging delle immagini
- funzioni più potenti per l'editing delle immagini
Ecco alcuni screeshot:
Nuovo sistema di Routing
Novità di Joomla 3.6?
mercoledì 9 settembre 2015
Ottimizzare il file robots.txt per Magento
robots.txt per la SEO di un e-commerce Magento
Il file robots.txt è molto importante per l'indicizzazione del tuo e-commerce Magento.Tramite questo file è possibile "istruire" corretamente i crawler dei motori di ricerca per una corretta indicizzazione dei file del tuo sito web.
Puoi escludere cartelle, includerne altre e dare ulteriori informazioni per la lettura del sito.
In pratica i benefici ottenibili sono 2:
- Evitare l'indicizzazione di contenuti duplicati;
- Nascondere i file e le cartelle relativi a contenuti "tecnici" (repository .git, cartella admin, etc..)
## IMPOSTAZIONI GENERALI
## Abilita le regole del robots.txt per tutti gli spider dei motori di ricerca
User-agent: *
## Parametro Crawl-delay: il numero di secondi di attesa tra una richiesta e l'altra allo stesso server
## Questo parametro è molto utile per ridurre la frequenza delle richieste dei crawler, che talvolta possono creare problemi di traffico al server.
Crawl-delay: 30
## Sitemap: inserisci l'indirizzo della sitemap del tuo sito web
Sitemap: http://www.miosito.com/sitemap/sitemap.xml
## IMPOSTAZIONI PER SITI IN SVILUPPO
## Non navigare le cartelle dei repository (CVS, snv, .git, etc..), gli ambienti di sviluppo (phpStorm, Netbeans, etc..) e i dump del db (.sql, tgz, etc..)
Disallow: /CVS
Disallow: /*.svn$
Disallow: /*.idea$
Disallow: /*.sql$
Disallow: /*.tgz$
Disallow: /*.git$
## LE IMPOSTAZIONI PRECEDENTI SONO GENERALMENTE VALIDE ANCHE PER ALTRE PIATTAFORME COME JOOMLA, DRUPAL, ETC..
## IMPOSTAZIONI DI MAGENTO
## NON NAVIGARE LA CARTELLA ADMIN
Disallow: /admin/
## NON NAVIGARE LE CARTELLE DI SISTEMA DI MAGENTO
Disallow: /app/
Disallow: /downloader/
Disallow: /errors/
Disallow: /includes/
Disallow: /lib/
Disallow: /pkginfo/
Disallow: /shell/
Disallow: /var/
## NON NAVIGARE I FILE DI SISTEMA DI MAGENTO
Disallow: /api.php
Disallow: /cron.php
Disallow: /cron.sh
Disallow: /error_log
Disallow: /get.php
Disallow: /install.php
Disallow: /LICENSE.html
Disallow: /LICENSE.txt
Disallow: /LICENSE_AFL.txt
Disallow: /README.txt
Disallow: /RELEASE_NOTES.txt
## MIGLIORAMENTI ALLA SEO DI MAGENTO
## NON NAVIGARE LE PAGINE DELLE SOTTOCATEGORIE CHE VENGONO FILTRATE O ORDINATE
Disallow: /*?dir*
Disallow: /*?dir=desc
Disallow: /*?dir=asc
Disallow: /*?limit=all
Disallow: /*?mode*
## NON NAVIGARE IL DUPLICATO DELLA HOME SU INDEX.PHP. QUESTA IMPOSTAZIONE VA INSERITA SOLO SE E' STATA IMPOSTATA L'OTTIMIZZAZIONE SEO DEGLI URL DI MAGENTO
Disallow: /index.php/
## NON NAVIGARE I LINK CHE CONTENGONO L'ID DI SESSIONE
Disallow: /*?SID=
## NON NAVIGARE NELLE CARTELLE Do not crawl checkout and user account pages
Disallow: /checkout/
Disallow: /onestepcheckout/
Disallow: /customer/
Disallow: /customer/account/
Disallow: /customer/account/login/
## NON NAVIGARE PAGINE DI RICERCA E PAGINE DEL CATALOGO NON OTTIMIZZATE PER LA SEO
Disallow: /catalogsearch/
Disallow: /catalog/product_compare/
Disallow: /catalog/category/view/
Disallow: /catalog/product/view/
## IMPOSTAZIONI DEL SERVER
## NON INDICIZZARE FILE E CARTELLE DI SISTEMA DEL SERVER
Disallow: /cgi-bin/
Disallow: /cleanup.php
Disallow: /apc.php
Disallow: /memcache.php
Disallow: /phpinfo.php
## NON INDICIZZARE LA PAGINA 404
Disallow: /404/
Per attivare queste opzioni puoi copiare e incollare le istruzioni che trovi qui sopra in un file, nominarlo come robots.txt e inserirlo nella root del tuo sito Magento
Per saperne di più:
http://www.robotstxt.org/
sabato 10 gennaio 2015
Comandi utili da terminale su Debian / Ubuntu / Mint
Lista di comandi utili per ottenere informazioni da termina su un web server LAMP (Linux Apache MySQL PHP)
du -a /var | sort -n -r | head -n 10
Mostra le 10 cartelle più grandi presenti sul sistema
truncate -s 0 /path/to/log.log
Pulire un file log
- Vai alla directory dei log di Apache
- Rimuovi tutti i file
- Ricarica apache