Cel mai nebunatic om pe care mi-a fost dat sa-l intalnesc si-a facut blog. Deah Lucica, da sa stii ca tot nu te iert ca mi-ai ascuns calculatorul si te-ai jurat o juma de zi ca l-ai vandut ca aveai o datorie. Amintiri, amintiri.
Pluginul original si pluginul minune de la zoso puse unul langa celalat :
/*
Plugin Name: Cyrillic Slugs
Plugin URI: http://petko.bossakov.eu/wordpress-cyrillic-slugs-plugin
Description: Converts Cyrillic letters in post slugs to their Latin phonetic equivalent.
Version: 1.0
Author: Petko Bossakov
Author URI: http://petko.bossakov.eu/
*/
/*
Copyright 2007 Petko Bossakov
Licensed under the terms of the GPL version 2, see:
http://www.gnu.org/licenses/gpl.txt
Provided without warranty, inluding any implied warrant of merchantability or fitness for purpose.
Based on SEO Slugs by Andrei Mikrukov (http://www.vretoolbar.com).
*/
add_filter('name_save_pre', 'cyr_slugs', 0);
function cyr_slugs($slug) {
$cyrillic = array('à','á','â','ã','ä','å','æ','ç','è','é','ê','ë','ì','í','î','ï','ð','ñ','ò','ó','ô','õ','ö','÷','ø','ù','ú','ü','û','ý','þ','ÿ');
$translit = array('a','b','v','g','d','e','zh','z','i','i','k','l','m','n','o','p','r','s','t','u','f','h','c','ch','sh','sht','u','y','y','e','yu','ya');
// We don't want to change an existing slug
if ($slug) return $slug;
global $wpdb;
$cyr_slug = cyr_strtolower(strtolower(stripslashes($_POST['post_title'])));
$cyr_slug = str_replace($cyrillic, $translit, $cyr_slug);
$cyr_slug = str_replace(" ", "-", $cyr_slug);
return $cyr_slug;
}
function cyr_strtolower($a) {
// Just in case standard strtolower doesn't work
$offset=32;
$m=array();
for($i=192;$i<224;$i++)$m[chr($i)]=chr($i+$offset);
return strtr($a,$m);
}
?>
/*
Plugin Name: Ro Slugs
Version: 1.1
*/
add_filter('name_save_pre', 'cyr_slugs', 0);
function cyr_slugs($slug) {
$cyrillic = array('à','á','â','ã','ä','å','æ','ç','è','é','ê','ë','ì','í','î','ï','ð','ñ','ò','ó','ô','õ','ö','÷','ø','ù','ú','ü','û','ý','þ','ÿ','ă','â');
$translit = array('a','a','a','a','a','a','a','c','e','e','e','e','i','i','i','i','o','n','o','o','o','o','o','-','o','u','u','u','u','u','b','y','a','a');
// We don't want to change an existing slug
if ($slug) return $slug;
global $wpdb;
$cyr_slug = cyr_strtolower(strtolower(stripslashes($_POST['post_title'])));
$cyr_slug = str_replace($cyrillic, $translit, $cyr_slug);
$cyr_slug = str_replace(" ", "-", $cyr_slug);
return $cyr_slug;
}
function cyr_strtolower($a) {
// Just in case standard strtolower doesn't work
$offset=32;
$m=array();
for($i=192;$i<224;$i++)$m[chr($i)]=chr($i+$offset);
return strtr($a,$m);
}
?>
Neah, pana si comentariile sunt la fel, p-alea nu s-au obosit sa le editeze/steraga, lol. Si culmea ca pluginu merge (dupa ce adaugi caracterele romanesti), ca-l folosesc pentru altii care aveau aceeasi problema. De prin 2008. Dar deah, daca nu e vb de poze sau continut incalcarea GPL sau CC e grava, dar incalcarea GPL se pare ca nu mai e la fel de relevanta pentru cod. Si tot n-am inteles “Am făcut un mic plugin care să rezolve problema” vs “E fixut (fixuit ? / facut ?) de niste amici” … Defapt cine a facut chestia :). Scoaterea copyright din sursa fara mentionarea autorului original nu e foarte frumos mai ales cand dai public ceva. Daca-l fixuiesti pt tine, treaba ta ce faci, numa’ sa stii ca daca unu cere codu’ sursa modificat, cam tre sa-l dai.Tind sa cred totusi ca nu zoso a fost cu ideea.
Sincer … e acelasi plugin, singurele doua linii care difera sunt declaratiile $cyrilic si $translit.
Si ca bonus, pluginu nu fixuieste caracterele rromani si nici nu merge daca editezi de pe un xp cu tastatura romaneasca legacy (alea de pun caracterele turcesti in loc te tz si sh).
Nu am fost niciodata un mare fan al copyright-ului, am fost mereu de parerea ca nu conteaza cat si de unde copiezi, ci ce adaugi si ce creezi pe baza a ceea ce copiezi. Dar situatia asta e ironica pentru ca cel care a postat respectiva chestie e mare aparator (si ii iese destul de bine) al drepturilor de autor, adica ceea ce urasc eu.
Dap sunt genu care editeaza o tema sau un soft, si apoi modifica copyrightu’ de genu “Originally developed by whoever for x, modified for this piece of software by”. Astfel incat daca unuia ii place, sa ajunga la randu-i la codul original. Si-mi pun si emailu, astfel ca daca vrea ceva GPL modificat de mine, sa ma contacteze sa-i trimit. Putinele chestii publice pe care le-am dat sunt cu licenta MIT, asa ca daca unul crea sa modifice pentru chestii proprietare sa nu fie obligat sa dea gratis bucati din bucataria interna. I hate GPL also, pt ca limiteaza dreptul de dezvoltare a chestiilor proprietare, obligand multi oameni sa scrie tone intregi de cod “from scratch” desi exista echivalente GPL cel putin la fel de bune.
Oricum, incep sa inteleg de ce unele chestii nu merg prin wordpressu’ de pe zoso.ro si filtrele de spam sunt asa de varza. Anyway, sweet, sweet, irony :).