Ce serviciu de backup online folosești?

Sunt ușor nelămurit despre ce aș putea folosi:

  • Sugarsync. Pare ok, destul de rapid dar are unele lipsuri (de ex. nu arată un ETA sau o rată de transfer)
  • Dropbox. Nu știe să facă sync la mai multe foldere by default. Trebuie să mă joc cu symlinks & shit.

Tu ce ai alege?

Filtrarea URL-urilor comentatorilor

Ca deținător de blog cu vechime (am împlinit vreo trei ani acum o săptămână; să-mi trăiască, mulțumesc) am fost întotdeauna enervat la maxim de acei comentatori ce completează field-ul URL razna.

O singură dată am încercat să elimin chestia asta, apelând la bunul simț comentatorilor. N-a fost să fie… Și dacă tot am făcut o temă WP de curând, am implementat treaba asta în functions.php:

add_filter('pre_comment_author_url', 'ntz_url_check');
function ntz_url_check($url_submited){
	if(is_user_logged_in()) {
		global $current_user;
	  get_currentuserinfo();
		if($current_user->wp_user_level == 10) {
			return $url_submited;
		}
	}
	$url_match = '~^(?:https?://)?(?:[\w]+\.)(?:\.?[\w]{2,})+$~';
	$url = parse_url(str_replace('www.', '', $url_submited));
	
	// =================================================
	// = Domenii interzise in url-urile comentatorilor =
	// =================================================
	$forbidden_urls = array('google.com', 'iamntz.com', 'google.ro');

	return ( (!preg_match($url_match, $url_submited) || in_array($url['host'], $forbidden_urls) ) ? '' : $url_submited );
}

Pui în array domeniile nedorite (fără www sau http; adaugă WP treburile astea) și aia e. Dacă userul este administrator, poate avea orice url. Cu wp_user_level alegi ce useri pot avea liber la orice link-uri.

jQuery vs $ vs WordPress

Ca un făcut, de vreo trei-patru zile sunt întrebat același lucru: de ce nu merge $ în WordPress atunci când folosești jQuery?

Răspunsul scurt este jQuery.noConflict();. Răspunsul un pic mai lung este următorul:

WP pune la dispoziția programatorilor mai multe librării JS, gata de a fi apelate printr-un simplu wp_enqueue_script(), astfel încât să nu existe tot felul de dubioșenii gen jQuery inclus de 4 ori (văzut!). Și cum jQuery nu este singura librărie care folosește $, pot apărea probleme. Prin urmare, jQuery este inclus apelându-se jQuery.noConflict();, astfel încât, fiecare e cu aia a mă-sii, ca să zic așa.

Vestea bună

Vestea bună este că nu trebuie să înlocuiești fiecare $ cu jQuery pentru a face totul să meargă. Ai putea să faci și asta, dar „costă” prea mulți kb. Te poți folosi de următoarea treabă:

jQuery(document).ready(function($){
 console.log($('div').length);
});

Observi parametrul $ la funcția anonimă? Eh, ăla face toată treaba.

Enjoy!

windows apple dropbox facebook twitter