رفتن به مطلب

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


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

یک مشکلی وجود دارد من از این کد استفاده می کنم و وقتی می زارم صفحه سفید می شود


<ul>
<?php
$limit_posts = 4;
$updates = get_last_updated(' ', 0, 15);
foreach($updates as $up){
if ( 0 == $up['blog_id'] || 1 == $up['blog_id'] )
$post_prefix= $table_prefix .'posts';
else
$post_prefix = $table_prefix . $up['blog_id'] . '_posts';
$_post = $wpdb->get_results($wpdb->prepare("SELECT post_title,ID FROM $post_prefix WHERE post_status='publish' AND post_type='post' ORDER BY ID DESC LIMIT ".intval($limit_posts)));
foreach((array)$_post as $obj) {
if(!is_object($obj))
continue;
printf('<li><a href="%s" title="%s">%2$s</a></li>',get_blog_option( $up['blog_id'],'siteurl').'/?p='.$obj->ID ,$obj->post_title);
}
}
?>
</ul>
?>

یک مورد هست این که من پسوند جداول تیبل رو تغییر دادم احتمالا به خاطر این هست لطفا راهنمایی کنید که چطوری این کد رو

با آن همسان کنم که مشکلی نداشته باشه و نمایش بده

لینک به ارسال

منظور از جداول تیبل ها این هست wp_که این را تغییر دادم همین لطفا بگید چکارکنم که طبق کد بالایی که دادم مطالب آخرین وبلاگ ها رو نمایش بده و صفحه سفید نشه

لینک به ارسال

صفحه سفید یعنی یک قسمت از کد شما مشکل داره.

شما ببینید فایل error_log در سرورتون وجودداره؟ اگر هست فایل رو اینجا پیوست کنید تا مشکل رو بررسی کنیم.

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

<ul>
<?php
$limit_posts = 4;
$updates = get_last_updated(' ', 0, 15);
foreach($updates as $up){
if ( $up['blog_id'] == 0 || $up['blog_id'] == 1 )
$post_prefix= $table_prefix .'posts';
else
$post_prefix = $table_prefix . $up['blog_id'] . '_posts';
$_post = $wpdb->get_results($wpdb->prepare("SELECT post_title,ID FROM $post_prefix WHERE post_status='publish' AND post_type='post' ORDER BY ID DESC LIMIT ".intval($limit_posts)));
foreach((array)$_post as $obj) {
if(!is_object($obj))
continue;
printf('<li><a href="%s" title="%s">%2$s</a></li>',get_blog_option( $up['blog_id'],'siteurl').'/?p='.$obj->ID ,$obj->post_title);
}
}
?>
</ul>

  • امتیاز 1
لینک به ارسال

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

شما اینمورد رو بررسی کردید؟

شما ببینید فایل error_log در سرورتون وجودداره؟ اگر هست فایل رو اینجا پیوست کنید تا مشکل رو بررسی کنیم.
لینک به ارسال

شما بجای این تکه:

SELECT post_title,ID FROM $post_prefix WHERE post_status='publish' AND post_type='post' ORDER BY ID DESC

به اینصورت وارد و تست کنید:

SELECT post_title,ID FROM wp_posts WHERE post_status='publish' AND post_type='post' ORDER BY ID DESC

فقط بجای wp_posts چیزی که تغییر دادید رو وارد کنید.

لینک به ارسال

شما برید به phpmyadmin و دیتابیس مورد نظر رو انتخاب کنید.

بعد برید به بخش sql و کد بالا که select بود رو در باکس وارد و اجرا کنید ببینید اصلا نتیجه ایی نمایش میده؟

لینک به ارسال

اره نمایش داد و سبز شد و این پیام رو داد

Showing rows 0 - 1 ( 2 total, Query took 0.0003 sec) [iD: 59 - 52]

مشخص شد که کوئری شما مشکل نداره. حداقل آی دی ها رو برگردوند.

خوب کوئری که وارد کردید رو اینجا بزارید تا ببینم.

لینک به ارسال

البته برای راحتی کار شما دو افزونه وجود داره که ابزارکی هست :


http://wordpress.org/extend/plugins/multisite-latest-posts-widget/
http://wordpress.org/extend/plugins/multisite-recent-posts-widget/

لینک به ارسال

لطفا برای ارسال دیدگاه وارد شوید

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



ورود به حساب کاربری
×
×
  • اضافه کردن...