Clasă whois în php

Clasa are metode pentru a trimite o cerere către un server de whois și verifică rezultatul. Metoda check() returnează true/false dacă string-ul răspuns căutat se găsește în stringul rezultat de la serverul whois. Serverul de whois este configurat automat, la fel și răspunsul dacă TLD-ul este definit în variabila $whoisServers .

Exemple de utilizare:

Verifică dacă serverul whois “whois.eu” returnează string-ul ”AVAILABLE”.

Download class.domaincheck.zip

Funcție PHP de înlocuire lățime/înălțime (width/height) în cod de embed

Această funcție vă ajută să înlocuiți automat width-ul și height-ul dintr-un cod de embed cu un width/height preferat. De asemenea forțează wmode pentru ca elemetul să poată fi acoperit de elemente cu z-index mai mare și poate fi folosit și cu iframe:

WP Image Preloader

Great news: version 1.2 of the plugin has been released! Now you can preload more images with a single piece of shortcode.

WP Image Preloader is a plugin for WordPress, made to help you speed up your blog. It pre-loads images using the Javascript technique.

How to preload your images? You can do this in two ways:

  1. Add the relative or absolute url of each imag into the default stack. This way, the image(s) will be preloaded on every page of the blog. Use this if you have hover images for menus.
  2. By adding the shortcode [preload=image_url] for one image or [preload=image_url1, image_url2, image_url3] for more images, into your posts. Note you have to activate the shortcode from the plugin configuration page first. This way the image will be preloaded only when viewing that specific post or page. You can also use relative or absolute urls.

Screenshots:

Documentation:

WP Image Preloader uses a jQuery script to preload images. The basic functionality of the script uses the same document.createElement('img') traditional DOM method. You can find the code in /js/jquery.imagepreloader.js file.

As per server-side, the plugin  uses a global array (stack) $WPIMGP_Queue = array(), to store absolute urls to the images.  The functions used to add urls to the global stack are:  wpimgpreloader_build_default_stack() and wpimgpreloader_parse_stack_from_content($content="") .  So the default stack is added to the array during wp_head action, while images preloaded using shortcodes will be filtered during the_content.

All the urls, are parsed using wpimgpreloader_parse_url($url) function, which also decides whether it should add the blog url at the beginning or not.

After parsing the all of the urls, what remains to do is to output the javascript code for image preloading. This action takes pace during the wp_footer by the wpimgpreloader_preload_js() function. If you take a look at it you’ll notice it first calls another function, wpimgpreloader_js_string_from_array($array, $derrive=false, $value=false) which returns a Javascript – formatted version of the input array.

How to use this plugin with your theme?

Course you can install the plugin and use it as it is, out-of-the-box. But, if you’d prefer you can also “embed” it’s functionality in your theme, and avoit having users to install it.  To do this, you need to add two more files  to your theme: wp-image-preloader-portable.php and jquery.imagepreloader.js, provided with the plugin. Then:
– enqueue the Javascript file (jquery.imagepreloader.js) to load in the header of your theme.
– include the PHP file (wp-image-preloader-portable.php) in your functions.php.
– call wpimgpreloader_enqueue($images) to add urls to your images into the stack. You can use as param a string (single url) or an array of urls, absolute or relative to the blog url.
– in the footer of your theme call wpimgpreloader_preload_js(TRUE) to print the image preloader Javascript.

Notes:

This plugin only generates the Javascript code to preload images. How fast the images are loaded is entirely the job of the web server serving the image(s).  Use it for images you may need later in the page (like hover) , not for images loaded anyway with the <img>  tag.
As the plugin name says it is for pre-loading images not for optimizing image(s) load.

Download:

You can always download the latest version from wordpress plugin’s page.

Questions?

If you need help,  have a question or suggestions, please add a comment to this article. Comments are held for moderation, but don’t worry I’ll try to get you an answer asap.

Batch resize script în PHP

Am realizat zilele trecute un script PHP care redimensionează  imaginile dintr-un director, la o lățime și înălțime dată. Pentru a-l utiliza ai nevoie de librăria GD preinstalată. Specificații:

================== Batch resize script în PHP =======================

Utilizare:

batchresize.php?dir=[source-path]&width=[width]&height=[height]&suffix=[filename-suffix]&output [yes|no|destination-path]&start=[index]&count=[as-many]&overwrite=[1|0].

Parametrii:

  • dir: directorul sursă din care se prelucrează imaginile. Poate fi o cale relativă sau absolută;
  • width: lățimea la care se redimensionează imaginile (thumbnails);
  • height: înălţimea la care se dorește redimensionarea; Notă: Dacă specificaţi doar lăţimea, sau doar înălţimea, parametrul lipsă va lua valoarea celui specificat. Deci, lățimea va fi egală cu înălţimea, în cazul în care înălţime numai este specificată, respectiv înălţimea va fi egală cu lăţimea dacă numai lățimea dorită este specificată;
  • suffix: sufixul pentru numele de fişierelor rezultate.  În mod implicit acesta este _thumb. Puteţi ignora acest parametru dacă specificați &output=yes;
  • output: calea către directorul în care vor fi salvate imaginile rezultate, sau setat “yes” va afișa în browser prima imagine redimensionată fără să salveze fișierul. Puteţi testa în acest fel mai multe combinaţii de înălţime/lățime înainte să faceți batch resize. În mod implicit directorul destinație este acelaşi cu directorul sursă.
  • start: dacă primiți erori de genul “Out of memory” când rulați scriptul, aveţi posibilitatea să utilizaţi &start şi &count pentru a redimensiona numai imaginile indexate între &start şi &star + &count.  Deci, dacă doriţi să să redimensionați primele 5 imagini din utilizarea directorul sursă puneți &start=0&count=5. Dacă doriţi să redimensionaţi următoarele 15 utilizați &start=6&count=15 şi aşa mai departe;
  • count: numărul de imagini care să fie redimensionate începând de la &start .
  • overwrite: puneți &overwrite=1 dacă doriţi să suprascrieţi fişierele existente deja redimensionate. Selecția se va face după parametrul &suffix. Fiți atent cu acest parametru, deoarece script-ul nu va face diferența între fişierele generate anterior. Așa că dacă directorul sursă este acelaș cu directorul destinație, va genera, de asemenea, thumbnailuri pentru thumbnailuri-urile deja existente şi aşa mai departe, ori de câte ori este aplicat.

Lăţimea implicită şi înălţimea implicite sunt de 100 x 100.
Sufixul implicit pentru numele fișierelor este _thumb.
Fişierele existente nu sunt suprascrise în mod implicit. Dacă doriţi să le suprascrieţi puneți &overwrite=1.
În prezent, script-ul suportă png, jpg, jpeg si gif. Fișierele rezultate sunt salvate ca jpg.
În scopuri de fiabilitate acest script nu va redimensiona fişiere mai mari de 2MB.

download

Găsește adresa gazdei (host-ul) curente cu javascript

Nu de puține ori s-a întâmplat să am  nevoie, într-un fișier sursă JavaScript, de adresa/domeniul pe care se găsește script-ul pentru a înlocui diferite variabile: calea către o imagine, statistici, etc.

Prima opțiune de rezolvare a problemei este destul de simplă și presupune înlocuirea unei variabile JavaScript din PHP. De exemplu:

Unde $_HOST este o variabilă generată din PHP pentru stabilirea host-ului. Dar, dacă fișierul js este static, și deci nu putem executa cod decât pe client, trebuie să apelăm la variabila window, mai exact la window.location.href. Codul de mai jos creează o variabilă globală, _WWW_HOST reprezentând adresa gazdei pe care rulează script-ul. De asemea, protocolul este extras separat, pentru a detecta dacă rulează sub HTTP sau HTTPS:

Funcția get_abspath() poate fi folosită și pentru a afla calea absoultă a unei resurse, trimițând ca parametru calea relativă.
Pentru a downloada scriptul dați click-dreapta și “Save link as…” .

download