Categoria ‘Internet’
Esiste una funzionalità in WordPress, a volte trascurata, che lo rende davvero molto versatile, soprattutto per chi crea temi: l’uso dei Template! Un Template non è altro che un file inserito nella cartella del tema. Per identificarlo come Template basta inserire all’inizio del file un particolare commento in PHP:
1 2 3
| /*
Template Name: Sitemap
*/ |
Sfruttando questa caratteristica è possibile creare una pagina vuota, con il procedimento standard di WordPress, e collegarla al nostro template. Se create un file, ad esempio sitemap.php (aggiungendo quel commento indicato più sopra) e lo caricate all’interno della cartella del vostro tema, noterete che nell’editor WordPress durante la creazione di una pagina (non di un post) il menu Template (in basso) conterrà il nome del file template caricato. Come indicato nella sezione template:
Alcuni temi hanno dei template personalizzati da poter utilizzare per determinate pagine, che possono contenere funzionalità aggiuntive o una grafica personalizzata. [...]
Io, ad esempio, ho sfruttato questa caratteristica per creare una pagina dinamica (che esegue quindi codice PHP) in grado di mostrare una vera e propria sitemap del blog.
Creazione di una pagina Sitemap
Prima di tutto create una file sitemap.php e caricatelo all’interno della cartella del vostro tema. Dall’amministrazione di WordPress create una nuova pagina, dategli un nome e selezionate il Template dal menu che si trova sotto l’editor! Finito!
Il template, facendo parte del tema, contiene anche tutta la struttura del tema stesso ed è quindi importante saperlo scrive in modo corretto. Tuttavia ecco uno scheletro di una sitemap che potete modificare in base al tema che avete installato:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| <?php
/*
Template Name: Sitemap
*/
?>
<?php get_header(); ?>
<div id="content">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="post" id="post-<?php the_ID(); ?>">
<h2><?php the_title(); ?></h2>
<small class="date-time"><?php the_time('l j F, Y') ?></small>
<div class="entry">
<p><strong><a href="<?php bloginfo('url'); ?>" alt=" <?php bloginfo('name'); ?>">Home </a></strong></p>
<h3>Pagine </h3>
<ul>
<?php wp_list_pages('title_li='); ?>
</ul>
<h3>Post </h3>
<ul>
<?php $archive_query = new WP_Query('showposts=1000');
while ($archive_query->have_posts()) : $archive_query->the_post(); ?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"> <?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul>
<h3>Archivi mensili </h3>
<ul>
<?php wp_get_archives('type=monthly'); ?>
</ul>
<h3>Categorie </h3>
<ul>
<?php wp_list_categories('title_li=0'); ?>
</ul>
<h3>Feeds RSS/FeedBurner </h3>
<ul>
<li><a href="<?php bloginfo('rdf_url'); ?>" alt="RDF/RSS 1.0 feed"> <acronym title="Resource Description Framework">RDF </acronym>/ <acronym title="Really Simple Syndication">RSS </acronym> 1.0 feed </a></li>
<li><a href="<?php bloginfo('rss_url'); ?>" alt="RSS 0.92 feed"> <acronym title="Really Simple Syndication">RSS </acronym> 0.92 feed </a></li>
<li><a href="<?php bloginfo('rss2_url'); ?>" alt="RSS 2.0 feed"> <acronym title="Really Simple Syndication">RSS </acronym> 2.0 feed </a></li>
<li><a href="<?php bloginfo('atom_url'); ?>" alt="Atom feed">Atom feed </a></li>
</ul>
</div>
</div>
<?php endwhile; endif; ?>
</div>
<?php get_sidebar(); get_footer(); ?> |
Continua...
Safari, il browser Apple disponibile anche per Windows, produce un bordo blu (blue border) quando si clicca all’interno di un campo input. Se in alcuni casi può risultare piacevole, in altri diventa davvero fastidioso! Per eliminarlo basta inserire nel nostro foglio di stile:
1 2
| /* ____________________________ remove blue border */
input { outline: 0 none } |
O, in alternativa, direttamente come attributo nel tag input:
1
| <input style="outline: 0 none" ... /> |
Continua...
È stata rilasciata la release candidate 1 (rc1) della versione 2.0 della libreria Javascript Shadowbox, di Michael J. I. Jackson, utilissima per aprire finestre dedicate alla visualizzazioni di vari tipi di media, da Flash a QuickTime a pagine HTML. In questa nuova versione troviamo:
- Il sito è più ricco di informazioni e include ora un wizard (sullo stile di mootools) per creare "al volo" un pacchetto della libreria personalizzato alle nostre esigenze
- Possibilità di usare un modulo standalone base, senza includere necessariamente – gli adattatori per le – librerie esterne come prototype.js, jQuery, etc…
- Miglioramenti alla gestione e realizzazione delle Skin
- Localizzazione
La libreria è disponibile anche su SVN all’indirizzo:
http://michaeljackson.googlecode.com/svn/trunk/shadowbox
Continua...
La tecnica di Text Replacement che presento oggi è, per certi aspetti, davvero interessante. A differenza della classica sostituizione per immagine tramite CSS, questa tecnica usa un filmato Flash per sovrascrivere i titoli del nostro sito. Nonostante sia un pochino più articolata, in quanto richiede la creazione di un filmato Flash e l’uso di Javascript, permette di ottenere una serie di vantaggi non indifferenti:
- Mantiene l’accessibilità del sito sfruttando un True-Unobtrusive-Javascript in modo che crawler e spider continuino a vedere la pagina come semplice e corretto HTML
- Non richiede la creazione di n immagini per n titoli. Basta un solo filmato per sostituire tutti i titoli del nostro sito, con un notevole risparmio in termini di Download
- Permette di creare anche titoli semplici ma con Font normalmente non utilizzati sul Web
- Il testo può essere reso in HTML, grazie alle caratteristiche di Flash
- Il testo è selezionabile
- Essendo un filmato Flash si può inserire interattività e animazioni di qualsiasi sorta
Noterete, anche, che in questa procedura i CSS non sono praticamente presi in considerazione!
Continua...
Il modo corretto di inserire titoli in grafica in una pagina Web è quello per sostituizione tramite i fogli di stile (vedi Progressive Enhancement in Accessibilità e Usabilità: unobtrusive Javascript). Questa tecnica permette di rendere accessibile il contenuto del sito a prescindere dalla visualizzazione grafica imposta dai fogli di stili. Inoltre, crawler e spider, avranno una lettura corretta dell’HTML ignorando la sostituzione grafica offerta all’utente finale. Inserire direttamente un’immagine (TAG img), infatti, rende il testo del titolo inaccessibili ai normali lettori ASCII (crawler, spider, blog plugin, screen-reader, etc…).
Continua...
Su OnAir di Undolog è adesso possibile utilizzare la funzione on-demand messa a disposizine dal player di Mogulus.
Segnala video
Se avete video da segnalare contattatemi, sarò felice – se possibile – di inserirli nel palinsesto di Undolog/OnAir
Continua...
Potrebbe sembrare un argomento scontato e ormai esaurito, eppure con Flash CS3 e la nuova gestione della classi documento (package) permesse con Actionscript 3.0, non è del tutto immediato creare un preloader funzionante. L’ultima release di Flash, infatti, gestisce il caricamento del filmato in modo diverso dalle precedenti versioni. In rete potrete trovare diverse proposte e soluzioni per ricreare un preloader “vecchio stampo”. Tuttavia i vari esempi che ho trovato non mi soddisfano pienamente in quanto richiedono di alterare il filmato in modo da farlo funzionare come un preloader classico. In pratica quando si sviluppa bisogna sempre rammentare “questa cosa la devo fare così altrimenti il preload non funziona”! E per i filmati già compilati, poi?
Loader
La soluzione che ho adottato, almeno per adesso, è stata quella di creare un filmato esterno (il mio loader – vedi esempio) in grado di caricare qualsiasi altro filmato esterno, compresa un’immagine! Questa soluzione, nonostante richieda in pratica due filmati (il loader e il filamato vero e proprio), diventa economica solo se si riesce a creare un loader in grado di essere usato più e più volte; cioè in grado di caricare qualsiasi filmato, a qualsiasi risoluzione e a qualsiasi framerate.
Continua...
Nel post Flash CS3: creare un effetto Reflex su qualsiasi MovieClip avevamo visto com’è possibile scrivere una classe, che estende un MovieClip, per collegarla a DesignTime ad un qualsiasi MovieClip in libreria. Ho scoperto, tuttavia, che può risultare più utile ed economico fare il percorso contrario. Ho creato una classe Reflex (Reflex.as), con l’intenzione di usarla esclusivamente da codice. Ho creato questa classe pensando di passare nel costruttore il puntatore ad un MovieClip. La nuova classe Reflex contiene in sostanza lo stesso codice prima inserito nella ReflexMe, ma leggermente modificato in modo da poter funzionare espressamente da codice:
1 2 3 4
| //
import undolibrary.sfx.*;
//
var rx:Reflex = new Reflex( movieClipInstance ); |
Continua...
Ancora una volta, quando mi trovo a scrivere riguardo le capacità dei fogli di stile, sono costretto a porre in disparte Microsoft Internet Explorer! Con i CSS2 è stata introdotta una caratteristica davvero interessante, la proprietà content, usata in congiunzione con gli pseudo-elementi before e after. Tramite questo “stile” è possibile alterare il contenuto di un sito agendo esclusivamente sul file CSS. Ad esempio se scriviamo:
1
| li:before { content: ">>" } |
Un elenco puntato (UL, LI) avrà ogni elemento preceduto dai caratteri “>>”! Qualsiasi elemento, ovviamente, può essere trattato in questo modo:
1
| <p>Posso inserire caratteri con i <span>fogli di stile </span></p> |
1
| p span:before { content: "-->" } |
La versatilità di questo elemento non finisce qui! È infatti possibile utilizzare altri parametri oltre al semplice (ma utilissimo) testo. L’elemento content, infatti, permette anche valori speciali o url:
1 2 3
| p:before { content: url(images/quote.gif) }
p:after { content: close-quote }
p:before { content: url(waves/sound.wav) } |
Per i dettagli sull’implementazione fare riferimento direttamente a W3C – peccato non lo faccia anche Microsoft!
Continua...
Introduco oggi un argomento interessante e vasto che ha il suo “core” nell’uso della classe DisplacementMapFilter. Questa classe permette di applicare un Filtro mappa di spostamento ad un oggetto visuale Flash (Bitmap, Sprite, etc…). Di filtri, Flash CS3, ne ha vari ed appartengono tutti alla stessa famiglia. Tuttavia il DisplacementMapFilter ha caratteristiche davvero particolari, come vedreno, che lo rendono straordinario nella generazione di effetti davvero spettacolari.
DisplacementMapFilter – clicca per aprire il filmato Flash
Scarica il sorgente
Continua...
Ultimi Commenti
Giovambattista Fazioli: @Nik: Sono contento! In bocca al lupo dunque!!
Nik: Lunedì ho l’esame di informatica su java, grazie mi sei stato utilissimo, il libro che ho era poco chiaro...
Marco: Ti ringrazio moltissimo, mi hai illuminato
ho risolto impostando [cc_objc] //OptionViewController.m -...
Giovambattista Fazioli: @Marco: Ti consiglio un approccio credo più corretto. Se hai eseguito il subclass del tab...
luigi: molto chiaro e semplice devo ammettere che anche scrivendo da un pà difficilmente uso delegati creati da...