دیتالایف انجین فارسی

دیتالایف انجین فارسی

پشتیبان رسمی سیستم مدیریت محتوا

لینک فارسی برای

لینک فارسی برای دیتالایف

لینک فارسی برای دیتالایف



لینک فارسی برای دیتالایف

این هک رو Sam.Razm در فروم قبلی قرار داده بودند که پاک شد .

1. فایل Engine/Inc/include/functions.inc.php رو باز کنید :

کد زیر رو پیدا کنید :

function totranslit($var, $lower = true, $punkt = true) {

        $NpjLettersFrom = "àáâãäåçèêëìíîïðñòóôöû³";
    $NpjLettersTo = "abvgdeziklmnoprstufcyi";
    $NpjBiLetters = array ("é" => "j", "¸" => "yo", "æ" => "zh", "õ" => "x", "÷" => "ch", "ø" => "sh", "ù" => "shh", "ý" => "ye", "þ" => "yu", "ÿ" => "ya", "ú" => "", "ü" => "", "¿" => "yi", "º" => "ye" );
    $NpjCaps = "ÀÁÂÃÄŨÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÜÚÛÝÞ߯ª²";
    $NpjSmall = "àáâãäå¸æçèéêëìíîïðñòóôõö÷øùüúûýþÿ¿º³";
    $var = str_replace( ".php", "", $var );
    $var = trim( strip_tags( $var ) );
    $var = preg_replace( "/\s+/ms", "-", $var );
    $var = strtr( $var, $NpjCaps, $NpjSmall );
    $var = strtr( $var, $NpjLettersFrom, $NpjLettersTo );
    $var = strtr( $var, $NpjBiLetters );
    if ( $punkt ) $var = preg_replace( "/[^a-z0-9\_\-.]+/mi", "", $var );
    else $var = preg_replace( "/[^a-z0-9\_\-]+/mi", "", $var );
    $var = preg_replace( '#[\-]+#i', '-', $var );
    if ( $lower ) $var = strtolower( $var );
    if( strlen( $var ) > 50 ) {
        $var = substr( $var, 0, 50 );
        if( ($temp_max = strrpos( $var, '-' )) ) $var = substr( $var, 0, $temp_max );
    }
return $var;
}


به جاش کد زیر رو قرار بدید :

function totranslit($var, $lower = true, $punkt = true) {
$var = str_replace(".php", "", $var);
$var = trim(strip_tags($var));
$var = preg_replace( "/\s+/ms", "-", $var );


if (strlen($var) > 70) {

$var = substr ($var, 0, 70);

if (($temp_max = strrpos($var, '-'))) $var = substr ($var, 0, $temp_max);

}

return $var;
}



2. فایل Engine/modules/functions.php رو باز کنید :

کد زیر رو پیدا کنید :

function totranslit($var, $lower = true, $punkt = true) {
    $NpjLettersFrom = "àáâãäåçèêëìíîïðñòóôöû³";
    $NpjLettersTo = "abvgdeziklmnoprstufcyi";
    $NpjBiLetters = array ("é" => "j", "¸" => "yo", "æ" => "zh", "õ" => "x", "÷" => "ch", "ø" => "sh", "ù" => "shh", "ý" => "ye", "þ" => "yu", "ÿ" => "ya", "ú" => "", "ü" => "", "¿" => "yi", "º" => "ye" );
    $NpjCaps = "ÀÁÂÃÄŨÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÜÚÛÝÞ߯ª²";
    $NpjSmall = "àáâãäå¸æçèéêëìíîïðñòóôõö÷øùüúûýþÿ¿º³";
    $var = str_replace( ".php", "", $var );
    $var = trim( strip_tags( $var ) );
    $var = preg_replace( "/\s+/ms", "-", $var );
    $var = strtr( $var, $NpjCaps, $NpjSmall );
    $var = strtr( $var, $NpjLettersFrom, $NpjLettersTo );
    $var = strtr( $var, $NpjBiLetters );
    if ( $punkt ) $var = preg_replace( "/[^a-z0-9\_\-.]+/mi", "", $var );
    else $var = preg_replace( "/[^a-z0-9\_\-]+/mi", "", $var );
    $var = preg_replace( '#[\-]+#i', '-', $var );
    if ( $lower ) $var = strtolower( $var );
    if( strlen( $var ) > 50 ) {
        $var = substr( $var, 0, 50 );
        if( ($temp_max = strrpos( $var, '-' )) ) $var = substr( $var, 0, $temp_max );
    }
return $var;
}




به جاش کد زیر رو قرار بدید :

function totranslit($var, $lower = true, $punkt = true) {
$var = str_replace(".php", "", $var);
$var = trim(strip_tags($var));
$var = preg_replace( "/\s+/ms", "-", $var );


if (strlen($var) > 70) {

$var = substr ($var, 0, 70);

if (($temp_max = strrpos($var, '-'))) $var = substr ($var, 0, $temp_max);

}

return $var;
}



عدد 70 تعداد کاراکترهای هر لینک هست که پیش فرض روی 50 هست . من رو 70 گذاشتم . دوستان اگر خواستن به پیش فرض برگردونن.

----------------------------------------

اینم روش Saron

در فایلهای : addnews.php . editnews.php در پوشه ی engine/inc
وفایل addnews.php در پوشه ی engine/modules کافیست این کار رو بکنید :


کد زیر رو پیدا کنید :

if( $alt_name == "" or ! $alt_name ) $alt_name = totranslit( stripslashes( $title ), true, false );
else $alt_name = totranslit( $alt_name, true, false );


به جاش کد زیر رو بگذارید :

if( trim( $alt_name ) == "" or ! $alt_name ) $alt_name = strip_tags( stripslashes( trim( str_replace(" ", "-", $title))));
else $alt_name = strip_tags( stripslashes( trim( str_replace(" ", "-", $alt_name))));

نظرات کاربران
Blue در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 37

بسیار عالی . البته من از قبل استفاده می كردم از این روش و پیشنهاد می كنم استفاده كنید . دست آقا سالار گل درد نكنه

Ramoos در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 8

خیلی ممنون،این کار برای SEO خیلی عالیه ...

Mhk1369 در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 77

دست درد نکنه happy

اشکان در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 182

عالیه سالار جونمیییییییییییییییی
ییییییی feel

--------------------

mob2ni در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 91

حرف نداره happy

ArlopA در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 64

Realy AMAZING !!!!!!!!!!!! happy

saron در 11 دی 1348 - 03:30 گفته:
مدیر بازنشستهنظرات: 198

سالار جان عزیز دستت درد نکنه
اما برای فارسی سازی لینکهای ادامه ی مطلب هیچ کدوم از این کارها لازم نیست و حتی دیتالایف انجین رو هم با مشکل امنیتی مواجه می کنه و این کارها به هیچ وجه درست نیست.
لذاب این کار کافته توی سه فایل تغییرات کوچیکی بدین که مشکل حل بشه.
در فایلهای زیر : addnews.php . editnews.php در پوشه ی engine/inc
وفایل addnews.php در پوشه ی engine/modules کافیست این کار رو بکنید :

کد زیر رو پیدا کنید :

[code]
if( $alt_name == "" or ! $alt_name ) $alt_name = totranslit( stripslashes( $title ), true, false );
else $alt_name = totranslit( $alt_name, true, false );
[code/]
و به جاش کد زیر رو بزنید :
[code]
if( trim( $alt_name ) == "" or ! $alt_name ) $alt_name = strip_tags( stripslashes( trim( str_replace(" ", "-", $title))));
else $alt_name = strip_tags( stripslashes( trim( str_replace(" ", "-", $alt_name))));
[code/]

موفق باشید

SalaR در 11 دی 1348 - 03:30 گفته:
مدیر بازنشستهنظرات: 312

saron,
خواهش میکنم کاری نکردم . روش شما رو هم با اجازه اضافه کردم. flower

elhacker در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 52

خیلی عالی بود ممنون lol

omrdabakhte در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 239

خیلی ممنون
دست گلت درد نکنه

delete در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 9

سلام ممنون از همگی
ولی فكر كنم تو این روش همه ی كاراكتر های غیر مجاز هم تو ادر قرار میگیره
مثلا اگه شما عنوان پستتون اینطوری باشه
موبایل ، خط كش جیبی (موبایل را خط كش كنید)
تو URL موارد غیر مجاز ازجمله ، و ( رو در ادرس قرار میده كه گوگل وبمشتر تولز بد جور گیر میده!!
فردا منم یه چیز تكمیلی اضافه میكنم :دی

delete در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 9

به نظر من
به جای اونیكه دكتر سالار گذاشته اینو بزارید
ویژگی هاش اینه كه حروف بزگ اینگیلیسی رو كوچی ك میكنه و برخی كاراكتر های غیر مجاز رو عوض میكنه!!!
function totranslit($var, $lower = true, $punkt = true) {

$NpjBiLetters = array(

"!" => "", "@" => "", "#" => "", "$" => "", "^" => "", "؟" => "", "-/-" => "-", "-&-" => "-",

"%" => "", "&" => "", "*" => "", "(" => "", ")" => "", "( " => "-", " )" => "-", " (" => "-", ") " => "-",

"_" => "-", "+" => "-","=" => "-", "|" => "-"," {" => "-","{ " => "-","} " => "-"," }" => "-","~" => "","'"
; => "",

":" => "",";" => "","?" => "",">" => "","<" => "","." => "-","," => "","

iranian.fi در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 20

بالاخره کدومش رو دیتا لایف انجین فارسی توصیه می کنه؟
گیر دادن گوگل به حروف غیر مجاز را در نظر بگیریم یا مورد امنیتی؟


البته من مورد امنیتی رو ترجیه دادم. امیدوارم گوگل گیر نده.

iranian.fi در 11 دی 1348 - 03:30 گفته:
عضو سایتنظرات: 20

من روش saron را اول متحان کردم.
در این روش وقتی می خواهی بعداً تیتر را عوض کنی، لینک عوض نمیشه و همون تیتر قبلی در لینک ظاهر میشه. یعنی:

صفحه مورد نظر پیدا نشد یا شما دسترسی به این صفحه ندارید.

FAIL recourse

saron در 11 دی 1348 - 03:30 گفته:
مدیر بازنشستهنظرات: 198

delete,
به جای این همه کد نویسی به راحتی می شد از تابع tolower استفاده کرد عزیز.
موفق باشید

ارسال نظر
نام:*
ایمیل:*
متن نظر:
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
کد را وارد کنید: *
عکس خوانده نمی‌شود؟ کلیک کنید!