Om

Vem/vad är subhanallah.se?

Subhanallah.se drivs av en svensk muslim (Björn Ali Göransson) i stockholmsområdet.

Hur är subhanallah.se gjord (teknisk information)?

Siten är byggd i WordPress 3.01, med Code Reduction-temat + några ändringar.

Automatisk wrappning av arabiska tecken är gjort med följande kod:

add_filter('the_content', function($content){
return preg_replace_callback("/\\{?(((?:\s*<.?strong>\s*)?(?:[\x{0600}-\x{06ff}])([\s,.-]+[\x{0600}-\x{06ff}]+)*)+)\\}?/u", function($matches){
return "{$matches[0]}";
}, $content);
});

Translitterering av arabiska är gjord automatiskt (beta) med följande kod:

function transliterate_to_arabic($content, $finalize_with_tanween = true) {
$content = preg_replace("/<[^>]+>/u", "", $content);
$content = preg_replace("/\s+/u", " ", $content);

if(!$finalize_with_tanween){
// tanween
$content = preg_replace(“/??$/u”, “?”, $content);
$content = preg_replace(“/[?]$/u”, “”, $content);
$content = preg_replace(“/[?]$/u”, “”, $content);
$content = preg_replace(“/[?]$/u”, “”, $content);
// harakat
$content = preg_replace(“/[?]$/u”, “”, $content);
$content = preg_replace(“/[?]$/u”, “”, $content);
$content = preg_replace(“/??$/u”, “??”, $content);
$content = preg_replace(“/[?]$/u”, “”, $content);
}

/* Special cases */
// prevent lam becoming “-” if succeeded by tanween
$content = preg_replace(“/???/u”, “????”, $content);
// misplaced shadda
$content = preg_replace(“/([???])?/u”, “?\$1″, $content);
// allah (common spelling: defective tashkil)
$content = preg_replace(“/????/u”, “???????”, $content);
$content = preg_replace(“/??????/u”, “???????”, $content);
// allah (remove -)
$content = preg_replace(“/??????/u”, “??????”, $content);

// alladhee, alladheena, etc
$content = preg_replace(“/????/u”, “????”, $content);

// ta marbutah without preceding fathah
$content = preg_replace(“/([^?])?/u”, “\$1??”, $content);

// unmarked alif-lam with sun letter
$content = preg_replace(“/\s??” . “([??????????????])” . “/u”, ” ??\$1″, $content);
// unmarked alif-lam with moon letter
$content = preg_replace(“/\s??” . “([?????????????])” . “/u”, ” ??\$1″, $content);

// sun letters
$content = preg_replace(“/??([^?])?/u”, “?\$1-\$1″, $content);
$content = preg_replace(“/??([^?])?/u”, “?\$1-\$1″, $content);
$content = preg_replace(“/?([^?])?/u”, “?\$1-\$1″, $content);
$content = preg_replace(“/????/u”, “???”, $content);
// moon letters
$content = preg_replace(“/([?\x{064b}-\x{0652}])?([^\x{064b}-\x{0652}?])/u”, “\$1?-\$2″, $content);

// ana
$content = preg_replace(“/?????$/u”, “?????”, $content);
$content = preg_replace(“/?????\s/u”, “????? “, $content);
// anti
$content = preg_replace(“/??????$/u”, “???????”, $content);
$content = preg_replace(“/??????\s/u”, “??????? “, $content);

/* Special letters */
// tatwil
$content = preg_replace(“/?/u”, “”, $content);
// dagger alif
$content = preg_replace(“/?/u”, “?”, $content);
// alif maqsura
$content = preg_replace(“/?/u”, “?”, $content);
// hamza in beginning of words (with harakah)
$content = preg_replace(“/^[???]([???])/u”, “\$1″, $content);
$content = preg_replace(“/\s[???]([???])/u”, ” \$1″, $content);
// hamza in beginning of words (without harakah)
$content = preg_replace(“/^[?]/u”, “a”, $content);
$content = preg_replace(“/^[?]/u”, “i”, $content);
$content = preg_replace(“/^[?]/u”, “‘”, $content);
$content = preg_replace(“/\s[?]/u”, ” a”, $content);
$content = preg_replace(“/\s[?]/u”, ” i”, $content);
$content = preg_replace(“/\s[?]/u”, ” ‘”, $content);
// hamza inside words
$content = preg_replace(“/([^-])[?????]/u”, “\$1-”, $content);
$content = preg_replace(“/[?????]/u”, “”, $content);

// alif with wasla preceded with haraka
$content = preg_replace(“/([?]\s*)?/u”, “\$1″, $content);
$content = preg_replace(“/([?]\s*)?/u”, “\$1″, $content);
$content = preg_replace(“/([?]\s*)?/u”, “\$1″, $content);

// alif with wasla preceded with long a
$content = preg_replace(“/?? ?/u”, “a “, $content);
// alif with wasla preceded with long u
$content = preg_replace(“/?? ?/u”, “u “, $content);
// alif with wasla preceded with long i
$content = preg_replace(“/?? ?/u”, “i “, $content);

// alif with wasla
$content = preg_replace(“/?/u”, “æ”, $content);
// alif with madda
$content = preg_replace(“/?/u”, “?”, $content);

// question mark
$content = preg_replace(“/?/u”, “?”, $content);

/* Special cases */
// i – mi’ah
$content = preg_replace(“/??/u”, “?”, $content);

/* Shadda */
// vowels
$content = preg_replace(“/???/u”, “?????”, $content);
$content = preg_replace(“/???/u”, “?????”, $content);
// regular
$content = preg_replace(“/(.)(?)/u”, “\$1\$1″, $content);

/* Harakat */
// misplaced tanween
$content = preg_replace(“/??/u”, “??”, $content);
// tanween
$content = preg_replace(“/??/u”, “an”, $content);
$content = preg_replace(“/?/u”, “un”, $content);
$content = preg_replace(“/?/u”, “in”, $content);
// long/short a
$content = preg_replace(“/??/u”, “a”, $content);
$content = preg_replace(“/?/u”, “a”, $content);
// long/short u
$content = preg_replace(“/??([^aa])/u”, “u\$1″, $content);
$content = preg_replace(“/?/u”, “u”, $content);
// long/short i
$content = preg_replace(“/??([^aa])/u”, “i\$1″, $content);
$content = preg_replace(“/?/u”, “i”, $content);

/* Letters */
$content = preg_replace(“/?/u”, “a”, $content);
$content = preg_replace(“/?/u”, “b”, $content);
$content = preg_replace(“/?/u”, “t”, $content);
$content = preg_replace(“/?/u”, “t”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “k”, $content);
$content = preg_replace(“/?/u”, “d”, $content);
$content = preg_replace(“/?/u”, “d”, $content);
$content = preg_replace(“/?/u”, “r”, $content);
$content = preg_replace(“/?/u”, “z”, $content);
$content = preg_replace(“/?/u”, “s”, $content);
$content = preg_replace(“/?/u”, “š”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “g”, $content);
$content = preg_replace(“/?/u”, “f”, $content);
$content = preg_replace(“/?/u”, “q”, $content);
$content = preg_replace(“/?/u”, “k”, $content);
$content = preg_replace(“/?/u”, “l”, $content);
$content = preg_replace(“/?/u”, “m”, $content);
$content = preg_replace(“/?/u”, “n”, $content);
$content = preg_replace(“/?/u”, “h”, $content);
$content = preg_replace(“/?/u”, “w”, $content);
$content = preg_replace(“/?/u”, “y”, $content);

$content = preg_replace(“/?/u”, “-”, $content);
// ta marbuta at end of word sequence
$content = preg_replace(“/?$/u”, “h”, $content);
$content = preg_replace(“/?/u”, “t”, $content);

/* Cleanup */

$content = preg_replace(“/[\x{0590}-\x{05ff}]/u”, “”, $content);

return $content;
}

add_filter(‘the_content’, function($content){
if(ICL_LANGUAGE_CODE == “ar”)return $content;
return preg_replace_callback(“/\\{?(((?:\s*<.?strong>\s*)?(?:[\x{0600}-\x{06ff}])([\s,.-]+[\x{0600}-\x{06ff}]+)*)+)\\}?/u”, function($matches){
return “<span class=\”arabic\” title=\”" . transliterate_to_arabic($matches[1], false) . “\”>{$matches[0]}</span>”;
}, $content);
});

Translitterering av hebreiska görs med följande kod:

// remove hebrew accents, meteg
add_filter('the_content', function($content){
return preg_replace("/[\x{0590}-\x{05ae}\x{05BD}]/u", "", $content);
});

function transliterate_to_hebrew($content) {
$sheva = “\x{05B0}”;
$tsere = “\x{05B5}”;
$holam = “\x{05B9}”;
$dagesh = “\x{05BC}”;
$shin_dot = “\x{05C1}”;
$sin_dot = “\x{05C2}”;

$aleph = “\x{05D0}”;
$he = “\x{05D4}”;
$waw = “\x{05D5}”;
$tav = “\x{05EA}”;

$content = preg_replace(“/<[^>]+>/u”, “”, $content);
$content = preg_replace(“/\s+/u”, ” “, $content);

$content = preg_replace(“/?/u”, ” “, $content); //convert maqaf to triple-space

// nikud special

//$content = preg_replace(“/[\x{05B0}-\x{05C7}]/u”, “·”, $content); // tmp

// in order for dagesh to double a letter, it must not be in the beginning of a string, word, or be preceeded or succeeded with a sheva ?? or tsere ??.

$content = preg_replace( “/^([$aleph-$tav])([$sheva\x{05B4}$tsere\x{05B6}\x{05B7}\x{05B8}\x{05B9}\x{05BB}])$dagesh/u”, “\$1\$2″, $content); // remove dagesh in beginning of string
$content = preg_replace(“/\s([$aleph-$tav])([$sheva\x{05B4}$tsere\x{05B6}\x{05B7}\x{05B8}\x{05B9}\x{05BB}])$dagesh/u”, ” \$1\$2″, $content); // remove dagesh in beginning of word
$content = preg_replace(“/([$sheva][$shin_dot$sin_dot]?[$aleph-$tav])([$sheva\x{05B4}$tsere\x{05B6}\x{05B7}\x{05B8}\x{05B9}\x{05BB}])$dagesh/u”, “\$1\$2″, $content); // remove dagesh preceded by sheva ??
$content = preg_replace(“/([$aleph-$tav])([$sheva])$dagesh/u”, “\$1\$2″, $content); // remove dagesh succeded by sheva ??

//$content = preg_replace(“/$dagesh/u”, “x”, $content); // tmp

//doubling

$content = preg_replace(“/([$aleph-$tav])([\x{05B4}\x{05B6}\x{05B7}\x{05B8}\x{05B9}\x{05BB}])$dagesh/u”, “\$1-\$1\$2″, $content); // letter with nikud then dagesh

// micro-vowel ? from sheva ?? and tsere ??

$content = preg_replace(“/([$sheva][$aleph-$tav])$tsere/u”, “\$1?”, $content); // tsere ?? with preceding sheva ??
$content = preg_replace(“/([$holam][$aleph-$tav])$sheva/u”, “\$1?”, $content); // sheva ?? with preceding holam ??

// aleph with …

$content = preg_replace(“/$aleph$holam/u”, “o”, $content); // aleph with holam ??
$content = preg_replace(“/[$aleph]\x{05B6}/u”, “e”, $content); // aleph with segol ??
$content = preg_replace(“/$aleph$tsere/u”, “?”, $content); // aleph with tsere ??
$content = preg_replace(“/[$aleph]\x{05B1}/u”, “e”, $content); // aleph with hataf segol ??
$content = preg_replace(“/[$aleph]\x{05B2}/u”, “a”, $content); // aleph with hataf patah ??
$content = preg_replace(“/[$aleph]\x{05B3}/u”, “a”, $content); // aleph with hataf qamats ??

// micro-vowel ? from sheva ?? and tsere ??

$content = preg_replace(“/^([$aleph-$tav])$sheva/u”, “\$1?”, $content); // sheva ?? in beginning of string
$content = preg_replace(“/\s([$aleph-$tav])$sheva/u”, ” \$1?”, $content); // sheva ?? in beginning of word

$content = preg_replace(“/^([$aleph-$tav])$tsere/u”, “\$1?”, $content); // tsere ?? in beginning of string
$content = preg_replace(“/\s([$aleph-$tav])$tsere/u”, ” \$1?”, $content); // tsere ?? in beginning of word

$content = preg_replace(“/\x{05B4}\x{05D9}/u”, “i”, $content); // hiriq ?? with yôd after
$content = preg_replace(“/$holam$waw/u”, “o”, $content); // holam ?? with waw after

$content = preg_replace(“/([$aleph-$tav])\x{05D5}$dagesh/u”, “\$1u”, $content); // waw with dagesh as in “u” = letter, without nikud, followed by waw with dagesh.

$content = preg_replace(“/?$shin_dot/u”, “š”, $content); // explicit shin
$content = preg_replace(“/?$sin_dot/u”, “s”, $content); // explicit sin

// letters
$content = preg_replace(“/?/u”, “æ”, $content);
$content = preg_replace(“/?/u”, “b”, $content);
$content = preg_replace(“/?/u”, “t”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “g”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “h”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “k”, $content);
$content = preg_replace(“/?/u”, “l”, $content);
$content = preg_replace(“/?/u”, “r”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “n”, $content);
$content = preg_replace(“/?/u”, “f”, $content);
$content = preg_replace(“/?/u”, “d”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “m”, $content);
$content = preg_replace(“/?/u”, “y”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “?”, $content);
$content = preg_replace(“/?/u”, “š”, $content);
$content = preg_replace(“/?/u”, “s”, $content);
$content = preg_replace(“/?/u”, “q”, $content);
$content = preg_replace(“/??/u”, “o”, $content);
$content = preg_replace(“/?/u”, “w”, $content);
$content = preg_replace(“/?/u”, “z”, $content);

//nikud
$content = preg_replace(“/\x{05B1}/u”, “e”, $content); // hataf segol ??
$content = preg_replace(“/\x{05B2}/u”, “a”, $content); // hataf patah ??
$content = preg_replace(“/\x{05B3}/u”, “a”, $content); // hataf qamats ??
$content = preg_replace(“/\x{05B8}/u”, “a”, $content); // qamats ??
$content = preg_replace(“/\x{05B7}/u”, “a”, $content); // patah ??
$content = preg_replace(“/\x{05B6}/u”, “e”, $content); // segol ??
$content = preg_replace(“/\x{05B9}\x{05D5}/u”, “o”, $content); // holam ?? with waw after
$content = preg_replace(“/\x{05B9}/u”, “o”, $content); // holam ??
$content = preg_replace(“/\x{05B4}/u”, “i”, $content); // hiriq ??
$content = preg_replace(“/\x{05BB}/u”, “u”, $content); // qubuts ??

//remove all others
$content = preg_replace(“/[\x{0590}-\x{05ff}]/u”, “”, $content);

$content = preg_replace(“/ /u”, “—”, $content); //convert triple-space to em dash
return $content;
}
add_filter(‘the_content’, function($content){
return preg_replace_callback(“/\\{?(((?:\s*<.?strong>\s*)?(?:[\x{0590}-\x{05ff}])([\s,.-]+[\x{0590}-\x{05ff}]+)*)+)\\}?/u”, function($matches){
return “<span class=\”hebrew\” title=\”" . transliterate_to_hebrew($matches[1]) . “\”>{$matches[0]}</span>”;
}, $content);
});

Jag är tacksam om den som ser ett fel med translittereringen rapporterar detta.

Bönen över profeten (Må Guds frid vara med honom) är gjord med följande kod:

add_filter('the_content', function($content){
return preg_replace("/(?:(Må Guds frid vara med honom)|\\(s\\))/u", "<span class=\"s-a-w\"><span>(Må Guds frid vara med honom)</span></span>", $content);
});

Sedan göms den inre spannen genom position:absolute;left:-9999em; och den yttre får title=”(den inre spannens html() från jquery)” samt en background-image via CSS.

På sådant sätt får man med sig textsträngen “(Må Guds frid vara med honom)” när man kopierar en artikel, vilket är mycket bra.

Rättigheter

بسم الله الرحمن الرحيم

OBS: Allt innehåll här får spridas på vilket sätt som helst, tryckas, säljas, skrivas ut, kopieras, översättas etc. (detta gäller även all kod)

Det skulle vara jättebra om ni lägger upp materialet härifrån på era egna sidor och ni behöver inte länka tillbaka hit.

Subhanallah.se logo - liten

Subhanallah.se logo - mellan

Subhanallah.se logo - stor

function transliterate_to_arabic($content, $finalize_with_tanween = true) {
$content = preg_replace(“/<[^>]+>/u”, “”, $content);
$content = preg_replace(“/\s+/u”, ” “, $content);if(!$finalize_with_tanween){
// tanween
$content = preg_replace(“/ًا$/u”, “ا”, $content);
$content = preg_replace(“/[ً]$/u”, “”, $content);
$content = preg_replace(“/[ٌ]$/u”, “”, $content);
$content = preg_replace(“/[ٍ]$/u”, “”, $content);
// harakat
$content = preg_replace(“/[َ]$/u”, “”, $content);
$content = preg_replace(“/[ُ]$/u”, “”, $content);
$content = preg_replace(“/لِ$/u”, “لْ”, $content);
$content = preg_replace(“/[ِ]$/u”, “”, $content);
}/* Special cases */
// prevent lam becoming “-” if succeeded by tanween
$content = preg_replace(“/لاً/u”, “لْاً”, $content);
// misplaced shadda
$content = preg_replace(“/([َُِ])ّ/u”, “ّ\$1″, $content);
// allah (common spelling: defective tashkil)
$content = preg_replace(“/الله/u”, “ٱلْلَاه”, $content);
$content = preg_replace(“/اللَّه/u”, “ٱلْلَاه”, $content);
// allah (remove -)
$content = preg_replace(“/ٱللَّٰ/u”, “ٱلْلَا”, $content);

// alladhee, alladheena, etc
$content = preg_replace(“/ٱلَّ/u”, “ٱللَ”, $content);

// ta marbutah without preceding fathah
$content = preg_replace(“/([^َ])ة/u”, “\$1َة”, $content);

// unmarked alif-lam with sun letter
$content = preg_replace(“/\sال” . “([تثدذرزسشصضطظلن])” . “/u”, ” ٱل\$1″, $content);
// unmarked alif-lam with moon letter
$content = preg_replace(“/\sال” . “([بجحخعغفقكمهوي])” . “/u”, ” ٱل\$1″, $content);

// sun letters
$content = preg_replace(“/ٱل([^ل])ّ/u”, “ٱ\$1-\$1″, $content);
$content = preg_replace(“/ال([^ل])ّ/u”, “ٱ\$1-\$1″, $content);
$content = preg_replace(“/ل([^ل])ّ/u”, “ٱ\$1-\$1″, $content);
$content = preg_replace(“/ٱللّ/u”, “ٱلل”, $content);
// moon letters
$content = preg_replace(“/([ٱ\x{064b}-\x{0652}])ل([^\x{064b}-\x{0652}ى])/u”, “\$1ل-\$2″, $content);

// ana
$content = preg_replace(“/أَنَا$/u”, “أَنَْ”, $content);
$content = preg_replace(“/أَنَا\s/u”, “أَنَْ “, $content);
// anti
$content = preg_replace(“/أَنْتِ$/u”, “أَنْتِْ”, $content);
$content = preg_replace(“/أَنْتِ\s/u”, “أَنْتِْ “, $content);

/* Special letters */
// tatwil
$content = preg_replace(“/ـ/u”, “”, $content);
// dagger alif
$content = preg_replace(“/ٰ/u”, “ا”, $content);
// alif maqsura
$content = preg_replace(“/ى/u”, “ا”, $content);
// hamza in beginning of words (with harakah)
$content = preg_replace(“/^[أإء]([َُِ])/u”, “\$1″, $content);
$content = preg_replace(“/\s[أإء]([َُِ])/u”, ” \$1″, $content);
// hamza in beginning of words (without harakah)
$content = preg_replace(“/^[أ]/u”, “a”, $content);
$content = preg_replace(“/^[إ]/u”, “i”, $content);
$content = preg_replace(“/^[ء]/u”, “‘”, $content);
$content = preg_replace(“/\s[أ]/u”, ” a”, $content);
$content = preg_replace(“/\s[إ]/u”, ” i”, $content);
$content = preg_replace(“/\s[ء]/u”, ” ‘”, $content);
// hamza inside words
$content = preg_replace(“/([^-])[أإءؤئ]/u”, “\$1-”, $content);
$content = preg_replace(“/[أإءؤئ]/u”, “”, $content);

// alif with wasla preceded with haraka
$content = preg_replace(“/([َ]\s*)ٱ/u”, “\$1″, $content);
$content = preg_replace(“/([ُ]\s*)ٱ/u”, “\$1″, $content);
$content = preg_replace(“/([ِ]\s*)ٱ/u”, “\$1″, $content);

// alif with wasla preceded with long a
$content = preg_replace(“/َا ٱ/u”, “a “, $content);
// alif with wasla preceded with long u
$content = preg_replace(“/ُو ٱ/u”, “u “, $content);
// alif with wasla preceded with long i
$content = preg_replace(“/ِي ٱ/u”, “i “, $content);

// alif with wasla
$content = preg_replace(“/ٱ/u”, “æ”, $content);
// alif with madda
$content = preg_replace(“/آ/u”, “ا”, $content);

// question mark
$content = preg_replace(“/؟/u”, “?”, $content);

/* Special cases */
// i – mi’ah
$content = preg_replace(“/ِا/u”, “ِ”, $content);

/* Shadda */
// vowels
$content = preg_replace(“/ُوّ/u”, “ُْوْو”, $content);
$content = preg_replace(“/ِيّ/u”, “ِْيْي”, $content);
// regular
$content = preg_replace(“/(.)(ّ)/u”, “\$1\$1″, $content);

/* Harakat */
// misplaced tanween
$content = preg_replace(“/ًا/u”, “اً”, $content);
// tanween
$content = preg_replace(“/اً/u”, “an”, $content);
$content = preg_replace(“/ٌ/u”, “un”, $content);
$content = preg_replace(“/ٍ/u”, “in”, $content);
// long/short a
$content = preg_replace(“/َا/u”, “ā”, $content);
$content = preg_replace(“/َ/u”, “a”, $content);
// long/short u
$content = preg_replace(“/ُو([^aā])/u”, “ū\$1″, $content);
$content = preg_replace(“/ُ/u”, “u”, $content);
// long/short i
$content = preg_replace(“/ِي([^aā])/u”, “ī\$1″, $content);
$content = preg_replace(“/ِ/u”, “i”, $content);

/* Letters */
$content = preg_replace(“/ا/u”, “ā”, $content);
$content = preg_replace(“/ب/u”, “b”, $content);
$content = preg_replace(“/ت/u”, “t”, $content);
$content = preg_replace(“/ث/u”, “ŧ”, $content);
$content = preg_replace(“/ج/u”, “ɉ”, $content);
$content = preg_replace(“/ح/u”, “ḥ”, $content);
$content = preg_replace(“/خ/u”, “ǩ”, $content);
$content = preg_replace(“/د/u”, “d”, $content);
$content = preg_replace(“/ذ/u”, “đ”, $content);
$content = preg_replace(“/ر/u”, “r”, $content);
$content = preg_replace(“/ز/u”, “z”, $content);
$content = preg_replace(“/س/u”, “s”, $content);
$content = preg_replace(“/ش/u”, “š”, $content);
$content = preg_replace(“/ص/u”, “ṣ”, $content);
$content = preg_replace(“/ض/u”, “ḍ”, $content);
$content = preg_replace(“/ط/u”, “ṭ”, $content);
$content = preg_replace(“/ظ/u”, “ẓ”, $content);
$content = preg_replace(“/ع/u”, “ʿ”, $content);
$content = preg_replace(“/غ/u”, “ğ”, $content);
$content = preg_replace(“/ف/u”, “f”, $content);
$content = preg_replace(“/ق/u”, “q”, $content);
$content = preg_replace(“/ك/u”, “k”, $content);
$content = preg_replace(“/ل/u”, “l”, $content);
$content = preg_replace(“/م/u”, “m”, $content);
$content = preg_replace(“/ن/u”, “n”, $content);
$content = preg_replace(“/ه/u”, “h”, $content);
$content = preg_replace(“/و/u”, “w”, $content);
$content = preg_replace(“/ي/u”, “y”, $content);

$content = preg_replace(“/ء/u”, “-”, $content);
// ta marbuta at end of word sequence
$content = preg_replace(“/ة$/u”, “h”, $content);
$content = preg_replace(“/ة/u”, “t”, $content);

/* Cleanup */

$content = preg_replace(“/[\x{0590}-\x{05ff}]/u”, “”, $content);

return $content;
}

add_filter(‘the_content’, function($content){
if(ICL_LANGUAGE_CODE == “ar”)return $content;
return preg_replace_callback(“/\\{?(((?:\s*<.?strong>\s*)?(?:[\x{0600}-\x{06ff}])([\s,.-]+[\x{0600}-\x{06ff}]+)*)+)\\}?/u”, function($matches){
return “<span class=\”arabic\” title=\”" . transliterate_to_arabic($matches[1], false) . “\”>{$matches[0]}</span>”;
}, $content);
});