WordPress Shortcodes – coduri de apelare a unor functii

In articolul de astazi voi vorbi despre WordPress Shortcodes, sau codurile scurte cu ajutorul carora se pot apela anumite functii. Aceste coduri sunt destul de puternice si usor de folosit, insa prea putina lume stie de existenta lor. Spre exemplu, nu ar fi util ca inserand codul “adsense” intr-un articol, sa fie afisat un anunt Google in loc? Sau folosind un anumit cod sa inserati in bara laterala un widget sau o functie mai complexa?

In prima parte a articolului voi explica cum poate fi creat si folosit un cod scurt, iar in a doua parte a articolului voi prezenta cateva exemple cu care blogul dumneavoastra va fi imbunatatit.

Modul de utilizare al codurilor scurte este partea cea mai simpla a acestui proces. Atunci cand scrieti un articol va trebui sa comutati de pe modul Visual pe modul HTML si sa introduceti codul intre parateze drepte:

[shortcode]

Cand salvati articolul, WordPress va executa codul si-l va inlocui in pagina blogului cu rezultatul acestuia.

Problema mai complicata este sa scrieti functia care se va executa la salvare, functie ce va fi inserata in fisierul functions.php a temei curente.
Spre exemplu sa inseram in functions.php urmatorul cod:

function hello() {
return 'Hello, World!';
}
add_shortcode('hw', 'hello');

Despre ce este vorba: am definit functia hello() care va afisa stringul “Hello, World!”. Apoi am definit codul scurt cu care vom apela functia in cadrul articolului: hw.

In continuare, de fiecare data cand intr-un articol vom scrie [hw] in modul HTML, la salvare se va executa functia hello(). Acum ca toata lumea a inteles mecanismul codurilor scurte, va voi arata cateva functii utile de folosit pe viitor.

Codul “Tweet this article!”

Stiu ca exista pluginuri care sa afiseze pe pagina articolului o iconita prin care se poate trimite o recomandare “tweet this” catre Twitter, insa dezavantajul unui astfel de plugin este ca va afisa iconita in toate articolele. Daca dorim ca iconita sau textul “tweet this” sa apara doar in anumite articole, atunci vom avea nevoie de un cod scurt.
Codul urmator va introduce in articol un link cu numele “Tweet this article!” prin care se poate trimite o recomandare spre Twitter. Cu putine modificari, puteti afisa in loc de text o imagine / iconita.
Inserati codul dat ca exemplu in fisierul functions.php a temei curente.

function twitt() {
  return '


';
}
add_shortcode('twitter', 'twitt');

Pentru a apela functia, scrieti in cadrul articolului:
[twitter]

Codul “Google Adsense”

Multe bloguri au modificata tema in asa fel incat sa afiseze printre paragrafele articolului reclame Google Adsense. La fel ca si in cazul unui plugin, reclamele vor fi afisate in toate articolele, in mod uniform. Daca dorim insa plasarea reclamelor in zone diferite, in functie de articol, iarasi vom avea nevoie de un shortcode.
Codul urmator va insera in articol un banner AdSense:

function showads() {
    return '
'; } add_shortcode('adsense', 'showads');

ATENTIE! Modificati in cod datele dvs de client si dimensiunile reclamei, sau inserati codul generat in locul codului dat ca exemplu. Pentru inserare in articol, folositi codul:

[adsense]

Ca un mic artificiu, puteti crea mai multe coduri pentru diferite formate ale bannerului, asa incat sa aveti flexibilitate maxima atunci cand doriti inserarea reclamelor in cadrul articolului.

Codul “Abonare la RSS”

Chiar daca linkul de abonare la RSS sta frumos in coltul dreapta sus, nu face rau un link suplimentar la finalul unui articol sau chiar inserat in continutul acestuia. Trebuie sa dam cititorului posibilitatea de abonare rapida, fara a mai derula pagina dupa ce a terminat de citit articolul. Si in acest caz dorim sa pastram controlul total al afisarii unui astfel de buton, de aceea vom apela tot la un cod scurt in locul unui plugin.
Codul din exemplul urmator va fi plasat tot in fisierul functions.php.

function subscribeRss() {
    return '


';
}

add_shortcode('subscribe', 'subscribeRss');

Inlocuiti linkul catre feed din exemplu cu propriul dvs. link. Dupa cum observati am pus linkul intr-un div pentru a-l putea stiliza usor. Tot ce mai trebuie sa faceti este sa inserati in fisierul style.css al temei curente codul urmator:

.rss-box{
  background:#F2F8F2;
  border:2px #D5E9D5 solid;
  font-weight:bold;
  padding:10px;
}

Inserarea codurilor scurte in sidebar

Implicit WordPress-ul va permite sa inserati coduri scurte doar in cadrul articolelor. Bineinteles ca vine si intrebarea: “Cum fac sa inserez coduri scurte in widget-urile din sidebar?”

Raspunsul este la fel de simplu ca si utilizarea codurilor. Va trebui sa inserati in fisierul functions.php o linie suplimentara:

add_filter('widget_text', 'do_shortcode');

Asta este tot, acum codurile pot fi folosite si in sidebar.

Resurse WordPress shortcodes

Articole asemanatoare:

  1. WordPress Hooks – functii personalizate si calea catre pluginuri
  2. Trucuri de imbunatatire a comentariilor pe un blog WordPress
  3. Pluginuri recomandate pentru WordPress
  4. WordPress Plugins – RO Social Bookmarks
  5. WordPress.org sau WordPress.com

Daca va plac articolele noastre, va recomandam sa va abonati la RSS feed. Este o metoda usoara prin care puteti citi articolele imediat ce acestea sunt publicate.
1 Comentariu
  1. [...] In acest articol insa nu voi vorbi despre cum sa faceti un plugin (nu uitati ca pluginurile vin cu propriile fisiere care se adauga in directorul wp-content/plugins), iar functiile personalizate trebuiesc puse undeva. Locatia este acelasi fisier functions.php din directorul wp-content/themes/tema_curenta in care am scris si functiile pentru wordpress shortcodes. [...]

Lasati un comentariu

XHTML - puteti folosi urmatoarele sintaxe de formatare: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

  • twitter

    LiveZilla Live Help

  • Banere parteneri

    Transporturi agabaritice - transport marfa intern si international
    Gazduire web
    Web design - Creare site web

    Land of Movies
    Vezi cine sta pe invisible