رفتن به مطلب

نمایش تعداد مطالب سایت


beh9am

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

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

بنده از وردپرس چند سایته استفاده میکنم و میخوام داخل سایت اینارو داشته باشم:

نمایش آخرین مطالب ارسال شده در سایت های شبکه

نمایش تعداد مطالب ارسال شده سایت خاص مثلا dl.site.com یا shop.site.com و هر سایتی از شبکه روکه خواستم

نمایش تعداد کل مطالب سایت های شبکه مثلا تعداد مطالب : 5000 عدد

ممنون از کمک و راهنمایی

لینک به ارسال

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


http://wordpress.org/plugins/generalstats/

لینک به ارسال

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


http://wordpress.org/plugins/generalstats/

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

لینک به ارسال


function get_sitestats() {
$stats = array(
'blogs' => get_blog_count(),
'users' => get_user_count(),
);

return $stats;
}

http://developer.wordpress.org/reference/functions/get_sitestats/

لینک به ارسال


function get_sitestats() {
$stats = array(
'blogs' => get_blog_count(),
'users' => get_user_count(),
);

return $stats;
}

http://developer.wor.../get_sitestats/

ممنون

وقتی کد رو میزارم این خطارو میده Fatal error: Cannot redeclare get_sitestats()

لینک به ارسال


function get_sitestats() {
$stats = array(
'blogs' => get_blog_count(),
'users' => get_user_count(),
);

return $stats;
}

http://developer.wor.../get_sitestats/

آقای فخار ماذرت میخوام پست میدم میشه در مورد کدی که دادید راهنمایی کنید ؟

لینک به ارسال

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

لینک به ارسال

در محل مناسب بگذارید و چک کنید


<?php echo get_blog_count();?>

مرسی

کار کرد ولی این کد تعداد وبلاگ های ساخته شده را نشون میده من میخوام تعداد پست های کل وبلاگ هارو نمایش بده یعنی هرچی مطلب تو سایت های ساخته شده وحود داره مجموعش رو نشون بده

لینک به ارسال

این کد را تست کنید (من امکان تست روی مولتی بلاگ وردپرس را ندارم)


<?php
$count_posts = wp_count_posts();
$published_posts = $count_posts->publish;
?>

تابع مرتبط دیگه ای به چشمم نخورد ولی خودتون هم می تونید توابع مولتی بلاگ رو در

http://codex.wordpress.org/Category:WPMU

و

http://codex.wordpress.org/Category:WPMU_Functions

چک کنید

لینک به ارسال

آخه اصلا ممکنه همچنین چیزی موجود نباشه ، جایی دیدید؟

اگر جایی دیدید بگید بریم بررسی کنیم شاید ما هم پیدا کنیم

لینک به ارسال

آخه اصلا ممکنه همچنین چیزی موجود نباشه ، جایی دیدید؟

اگر جایی دیدید بگید بریم بررسی کنیم شاید ما هم پیدا کنیم

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

چشم آقای فخار تست میکنم ببینم چی میشه

لینک به ارسال

اول از فایل فانکشن خودتون پشتیبان بگیرید بعد کد زیر رو قرار بدید

روند کار به این صورت هست که در واقع داریم تعداد بازدید های سایت زیر مجموعه رو با سایت اصلی عوض می کنیم .


function posts_count_func( $args ){
global $wpdb;
$blogs = $wpdb->get_results( $wpdb->prepare(
"SELECT * FROM {$wpdb->blogs} WHERE spam = '0'
AND deleted = '0' AND archived = '0'
ORDER BY registered DESC, 2", ARRAY_A ) );
$original_blog_id = get_current_blog_id();
$args = array(
'numberposts' => -1,
'post_type' => 'post',
'post_status' => 'publish' );
$total_network = $draft_network = 0;
$total_sites = 0;
foreach ($blogs as $blog)
{
wp_cache_flush();
switch_to_blog( $blog->blog_id );
$args['post_status'] = 'publish';
if (count(get_posts($args))<2) { continue; }
$total_posts = count( get_posts( $args ) );
$total_network += $total_posts;
$total_sites += 1;
$args['post_status'] = 'draft';
}
set_site_transient ( 'total_posts_cache', $total_network, 24 * HOUR_IN_SECONDS );
switch_to_blog( $original_blog_id );

لینک به ارسال

در فایل فانکشن اضافه کنید :


add_action( 'wp_network_dashboard_setup', 'wpse_66963_network_dashboard_setup' );
function wpse_66963_network_dashboard_setup()
{
wp_add_dashboard_widget(
'wpse_66963_posts_count_widget',
'<div id="icon-edit" class="icon32"></div><h2>وضعیت شبکه</h2>',
'wpse_66963_posts_count' );
}
function wpse_66963_posts_count()
{
global $wpdb;
$blogs = $wpdb->get_results( $wpdb->prepare(
"SELECT * FROM {$wpdb->blogs} WHERE spam = '0'
AND deleted = '0' AND archived = '0'
ORDER BY registered DESC, 2", ARRAY_A ) );
$original_blog_id = get_current_blog_id();
if ( empty( $blogs ) )
{
echo '<p>هیچ وبلاگی وجود ندارد</p>';
break;
}
?>
<table class="widefat">
<thead>
<tr>
<th>سایت</th>
<th>مجموع پست ها</th>
<th>پیش نویس ها</th>
</tr>
</thead>
<tfoot>
<tr>
<th>سایت</th>
<th>مجموع پست ها</th>
<th>پیش نویس ها</th>
</tr>
</tfoot>
<tbody>
<?php
$args = array(
'numberposts' => -1,
'post_type' => 'post',
'post_status' => 'publish' );
$total_network = $draft_network = 0;
$total_sites = 0;
foreach ($blogs as $blog)
{
wp_cache_flush();
switch_to_blog( $blog->blog_id );
$args['post_status'] = 'publish';
if (count(get_posts($args))<2) { continue; }
$total_posts = count( get_posts( $args ) );
$total_network += $total_posts;
$total_sites += 1;
$args['post_status'] = 'draft';
$draft_posts = count( get_posts( $args ) );
$draft_network += $draft_posts;
?>
<tr>
<td><a href="<?php echo site_url(); ?>"><?php echo site_url(); ?></a></td>
<td><?php echo $total_posts; ?></td>
<td><?php echo $draft_posts; ?></td>
</tr>
<?php
}
?>
<tr>
<td><b>مجموع (<?php echo $total_sites;?> سایت وجود دارد)</b></td>
<td><?php echo $total_network; ?></td>
<td><?php echo $draft_network; ?></td>
</tr>
</tbody>
</table>
<?php echo memory_get_usage(); ?>
<br/>
<?php echo memory_get_peak_usage(); ?>
<?php
switch_to_blog( $original_blog_id );
}

لینک به ارسال

اول از فایل فانکشن خودتون پشتیبان بگیرید بعد کد زیر رو قرار بدید

روند کار به این صورت هست که در واقع داریم تعداد بازدید های سایت زیر مجموعه رو با سایت اصلی عوض می کنیم .


function posts_count_func( $args ){
global $wpdb;
$blogs = $wpdb->get_results( $wpdb->prepare(
"SELECT * FROM {$wpdb->blogs} WHERE spam = '0'
AND deleted = '0' AND archived = '0'
ORDER BY registered DESC, 2", ARRAY_A ) );
$original_blog_id = get_current_blog_id();
$args = array(
'numberposts' => -1,
'post_type' => 'post',
'post_status' => 'publish' );
$total_network = $draft_network = 0;
$total_sites = 0;
foreach ($blogs as $blog)
{
wp_cache_flush();
switch_to_blog( $blog->blog_id );
$args['post_status'] = 'publish';
if (count(get_posts($args))<2) { continue; }
$total_posts = count( get_posts( $args ) );
$total_network += $total_posts;
$total_sites += 1;
$args['post_status'] = 'draft';
}
set_site_transient ( 'total_posts_cache', $total_network, 24 * HOUR_IN_SECONDS );
switch_to_blog( $original_blog_id );

اینو استفاده کردم چیزی نیومد

در فایل فانکشن اضافه کنید :


add_action( 'wp_network_dashboard_setup', 'wpse_66963_network_dashboard_setup' );
function wpse_66963_network_dashboard_setup()
{
wp_add_dashboard_widget(
'wpse_66963_posts_count_widget',
'<div id="icon-edit" class="icon32"></div><h2>وضعیت شبکه</h2>',
'wpse_66963_posts_count' );
}
function wpse_66963_posts_count()
{
global $wpdb;
$blogs = $wpdb->get_results( $wpdb->prepare(
"SELECT * FROM {$wpdb->blogs} WHERE spam = '0'
AND deleted = '0' AND archived = '0'
ORDER BY registered DESC, 2", ARRAY_A ) );
$original_blog_id = get_current_blog_id();
if ( empty( $blogs ) )
{
echo '<p>هیچ وبلاگی وجود ندارد</p>';
break;
}
?>
<table class="widefat">
<thead>
<tr>
<th>سایت</th>
<th>مجموع پست ها</th>
<th>پیش نویس ها</th>
</tr>
</thead>
<tfoot>
<tr>
<th>سایت</th>
<th>مجموع پست ها</th>
<th>پیش نویس ها</th>
</tr>
</tfoot>
<tbody>
<?php
$args = array(
'numberposts' => -1,
'post_type' => 'post',
'post_status' => 'publish' );
$total_network = $draft_network = 0;
$total_sites = 0;
foreach ($blogs as $blog)
{
wp_cache_flush();
switch_to_blog( $blog->blog_id );
$args['post_status'] = 'publish';
if (count(get_posts($args))<2) { continue; }
$total_posts = count( get_posts( $args ) );
$total_network += $total_posts;
$total_sites += 1;
$args['post_status'] = 'draft';
$draft_posts = count( get_posts( $args ) );
$draft_network += $draft_posts;
?>
<tr>
<td><a href="<?php echo site_url(); ?>"><?php echo site_url(); ?></a></td>
<td><?php echo $total_posts; ?></td>
<td><?php echo $draft_posts; ?></td>
</tr>
<?php
}
?>
<tr>
<td><b>مجموع (<?php echo $total_sites;?> سایت وجود دارد)</b></td>
<td><?php echo $total_network; ?></td>
<td><?php echo $draft_network; ?></td>
</tr>
</tbody>
</table>
<?php echo memory_get_usage(); ?>
<br/>
<?php echo memory_get_peak_usage(); ?>
<?php
switch_to_blog( $original_blog_id );
}

تشکر آقا کسرا این کار کرد مرسی

از همه دوستان ممنونم

لینک به ارسال

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

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

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

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

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

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

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

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

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