ali56 197 ارسال شده در تیر 92 گزارش بازنشر ارسال شده در تیر 92 سلام دوستانتو این تاپیک با کمک آقای ایمان فخار یه صفحه ساختم برای کاربرای سایت برای مشاهده وضعییت مطالب ارسالی خودشونالبته عنوان تاپیک چیز دیگه ای بود چون بحث منحرف شد این تاپیک را زدمبرای ساخت صفحه از این کد استفاده کردم<?phpglobal $user_ID, $user_identity, $user_level, $user_email, $user_login, $user_info, $user_first_name, $user_last_name, $user_url; if (is_user_logged_in()) : ?><table style="width: 100%"><caption>وضعیت ارسال های شما </caption><tr> <th style="width: 400px">نام مطلب</th> <th style="width: 100px">وضعیت</th> <th style="width: 80px">تاریخ </th> <th>توضیحات </th></tr> <?php $recent = new WP_Query("post_status=publish, trash, future, pending&author=$user_ID&showposts=5");if ($recent->have_posts()) :?> <?php while($recent->have_posts()) : $recent->the_post();?><tr> <?php if ( get_post_status ( $ID ) == 'publish' ) {?> <td class="pub"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></td> <td class="pub"> منتشر شده</td> <td class="pub"><?php the_date('y/m/d');?></td> <td class="pub"><?php if (current_user_can('edit_post', $post->ID)): ?><?php edit_post_link('ویرایش', ''); ?><?php endif; ?> </td><?php } else if ( get_post_status ( $ID ) == 'pending' ) {?> <td class="pen"><?php the_title(); ?></td> <td class="pen">در انتظار بررسی</td> <td class="pen"><?php the_date('y/m/d');?></td> <td class="pen"><?php if (current_user_can('edit_post', $post->ID)): ?><?php edit_post_link('ویرایش', ''); ?><?php endif; ?> </td><?php } else if ( get_post_status ( $ID ) == 'future' ) {?> <td class="fut"><?php the_title(); ?></td> <td class="fut">زمانبندی برای نشر</td> <td class="fut"><?php the_date('y/m/d');?></td> <td class="fut"><?php if (current_user_can('edit_post', $post->ID)): ?><?php edit_post_link('ویرایش', ''); ?><?php endif; ?></td><?php } else {?> <td class="tra"><?php the_title(); ?></td> <td class="tra">حذف شده</td> <td class="tra"><?php the_date('y/m/d');?></td> <td class="tra"><?php $tozih = get_post_meta($post->ID, 'tozih', true); ?><?php echo $tozih; ?></td><?php }?> </tr> <?php endwhile;?> <?php endif;?> <?php wp_reset_query(); ?><tr> <td style="width: 400px">نام مطلب</td> <td style="width: 100px">تاریخ </td> <td style="width: 80px">وضعیت </td> <td>توضیحات </td></tr></table><style type="text/css">.pub {background:#CCFFCC}.pen {background:#CCCCFF}.fut {background:#66CCFF}.tra {background:#FFCCFF}</style><?php else : ?><h2>برای مشاهده این صفحه باید وارد حساب کاربری خود شده باشید</h2> <?php wp_login_form(); ?> <?php endif;?>حالا من میخوام یه استاتوس دیگه تعریف کنم برای مطالبی که تایید نمیشه با توجه به این آموزشباژنراتور وردپرس یه کد وضعیت تعریف کردم ببینید درسته؟واین که این کد را در فانکشن قالب اضافه کنم یا فانکشن وردپرس؟// Register Custom Statusfunction custom_post_status() {$args = array( 'label' => _x( 'void', 'Status General Name', 'text_domain' ), 'label_count' => _n_noop( 'Void (%s)', 'Void (%s)', 'text_domain' ), 'public' => false, 'show_in_admin_all_list' => true, 'show_in_admin_status_list' => true, 'exclude_from_search' => false,);register_post_status( 'void', $args );}// Hook into the 'init' actionadd_action( 'init', 'custom_post_status', 0 ); نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در تیر 92 گزارش بازنشر ارسال شده در تیر 92 کدتون درسته و به فانکشن قالبتون باید اضافه بشه فقط اگر می خواهید در پنل کاربریتون نمایشش بدید مقدار public را از false به true تغییر بدید 3 نقل قول لینک به ارسال
ali56 197 ارسال شده در تیر 92 مالک گزارش بازنشر ارسال شده در تیر 92 کدتون درسته و به فانکشن قالبتون باید اضافه بشهفقط اگر می خواهید در پنل کاربریتون نمایشش بدید مقدار public را از false به true تغییر بدید الان درست کردم بازم نشون نمیدهیعنی تو قسمت وضعیت فقط/ برای بازبینی / منتشر شده و پیش نویس قرار داره نقل قول لینک به ارسال
ali56 197 ارسال شده در تیر 92 مالک گزارش بازنشر ارسال شده در تیر 92 کدتون درسته و به فانکشن قالبتون باید اضافه بشه فقط اگر می خواهید در پنل کاربریتون نمایشش بدید مقدار public را از false به true تغییر بدید ببخشید میدونم سرتون شلوغه مارو فراموش کردیناگر لطف کنین این عکس و ببیند من کد را درست کردم ولی اینجا نمایش داده نمیشه نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در تیر 92 گزارش بازنشر ارسال شده در تیر 92 ببخشید میدونم سرتون شلوغه مارو فراموش کردیناگر لطف کنین این عکس و ببیند من کد را درست کردم ولی اینجا نمایش داده نمیشهبرای چیزی که می خواهیدذ باید moderation_status را ریجستری کنید این فایل را دانلود کنید و اینکلود کنید روی فانکشنز قالب ببینید جواب می ده یا نه https://core.trac.wordpress.org/attachment/ticket/12706/custom-status-helper_1.0.zip 3 نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در تیر 92 گزارش بازنشر ارسال شده در تیر 92 این افزونه مشکلتون رو برطرف می کنهhttp://wordpress.org/plugins/custom-status/البته پستهایی که قبلا منتشر شده اند رو نمی تونید به صورت یکجا به این وضعیت برگردونید 3 نقل قول لینک به ارسال
ali56 197 ارسال شده در تیر 92 مالک گزارش بازنشر ارسال شده در تیر 92 (ویرایش شده) برای چیزی که می خواهیدذ باید moderation_status را ریجستری کنید این فایل را دانلود کنید و اینکلود کنید روی فانکشنز قالب ببینید جواب می ده یا نهhttps://core.trac.wo...-helper_1.0.zipفایل را در پوشه includes آپلود کردم و با این کد فراخوانی کردمinclude_once (TEMPLATEPATH . '/includes/custom-status-helper.php');ولی چیزی اضافه نشدولی افزونه کاملا چیزی هست که میخوامدستتون درد نکنه ویرایش شده تیر 92 توسط ali56 1 نقل قول لینک به ارسال
ali56 197 ارسال شده در تیر 92 مالک گزارش بازنشر ارسال شده در تیر 92 این افزونه مشکلتون رو برطرف می کنهhttp://wordpress.org.../custom-status/البته پستهایی که قبلا منتشر شده اند رو نمی تونید به صورت یکجا به این وضعیت برگردونیدآقای فخار صفحه پنل کاربری تموم شد حالامن یه صفحه دیگه هم برای ویرایش درست کردم که کاربر بعد از کلیک روی میرایش به اون صفحه میره و میتونه مطلبشو ویرایش کنهآیا میشه کاری کرد که بعد از ویرایش وضعییت از حالت انتشار خارج بشه و به یکی از وضعییتهای در انتضار یا پیشنویس تغییر کنه ؟ممنون نقل قول لینک به ارسال
ali56 197 ارسال شده در مرداد 92 مالک گزارش بازنشر ارسال شده در مرداد 92 آقای فخار عزیز یا دوستان دیگهاگه در این مورد میتونن راهنمایی بفرمایید ممنون میشم نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در مرداد 92 گزارش بازنشر ارسال شده در مرداد 92 صفحه را با چه کدی ایجاد کردید کد را بگذارید 1 نقل قول لینک به ارسال
ali56 197 ارسال شده در مرداد 92 مالک گزارش بازنشر ارسال شده در مرداد 92 صفحه را با چه کدی ایجاد کردید کد را بگذاریدآقا ایمان کدها طولانی بود برای همین پیوست کردمالان این صفحه کاملا درست عمل میکنه و کاربر میتونه پست خودشو ویرایش کنه فقط کد تغییر وضعییت را اگر لطف کنید البته با توجه به کدهای این صفحه راهنمایی کنیدممنونedit-post.php نقل قول لینک به ارسال
ali56 197 ارسال شده در مرداد 92 مالک گزارش بازنشر ارسال شده در مرداد 92 میدونم مبتدی مثل من زیاده و تعداد سوالات بالا هست و کاربر حرفه ای به نسبت کمآقا ایمان عزیز هم سرشون واقعا شلوغهاگر دوستان کسی میتونه راهنمایی کنه ممنون میشم نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در مرداد 92 گزارش بازنشر ارسال شده در مرداد 92 تعریف publish در این فایل انجام نشده احتمالا در functions.php باید تعریف شده باشه که submit شدن فرم باعث publish بشه در هرجا چنین تعریفی هست publish را به pending تبدیل کنید این نمونه کد تعریفشه if ( isset( $_POST['submit'] ) && current_user_can( 'publish_posts' ) ) $post['post_status'] = 'publish';که باید بشه if ( isset( $_POST['submit'] ) && current_user_can( 'publish_posts' ) ) $post['post_status'] = 'pending'; 3 نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در مرداد 92 گزارش بازنشر ارسال شده در مرداد 92 اگر نبود کد دوم را قبل ازif((!empty($_POST['submit'])) && current_user_can('edit_posts')) {در خط 26 بگذارید و تست بگیرید 2 نقل قول لینک به ارسال
ali56 197 ارسال شده در مرداد 92 مالک گزارش بازنشر ارسال شده در مرداد 92 تعریف publish در این فایل انجام نشده احتمالا در functions.php باید تعریف شده باشه که submit شدن فرم باعث publish بشه در هرجا چنین تعریفی هست publish را به pending تبدیل کنیداین نمونه کد تعریفشهif ( isset( $_POST['submit'] ) && current_user_can( 'publish_posts' ) )$post['post_status'] = 'publish';که باید بشهif ( isset( $_POST['submit'] ) && current_user_can( 'publish_posts' ) )$post['post_status'] = 'pending';publish را در تمام پوسته سرچ کردم ولی چنین کدی که مربوط به SUBMIT بشه پیدا نکردماز کد دوم به اینصورت استفاده کردمif ( isset( $_POST['submit'] ) && current_user_can( 'publish_posts' ) ) $post['post_status'] = 'pending';if((!empty($_POST['submit'])) && current_user_can('edit_posts')) { // delete any images checked if (!empty($_POST['image'])) cp_delete_image();// update the image alt textif (!empty($_POST['attachments'])) cp_update_alt_text();ولی این ارور را دادFatal error: Cannot use object of type WP_Post as arrayتو خط 27یعنی این $post['post_status'] = 'pending'; نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در مرداد 92 گزارش بازنشر ارسال شده در مرداد 92 این رو هم قبلش اضافه کنید اگر باز هم ارور دئاد بگید$post = get_default_post_to_edit();$post = get_object_vars($post); 1 نقل قول لینک به ارسال
ali56 197 ارسال شده در مرداد 92 مالک گزارش بازنشر ارسال شده در مرداد 92 این رو هم قبلش اضافه کنید اگر باز هم ارور دئاد بگید$post = get_default_post_to_edit();$post = get_object_vars($post);بعد از اضافه کردن موقع ورود به صفحه ادیت این ارور دادFatal error: Call to undefined function get_default_post_to_edit()اینو حذف کردم$post = get_default_post_to_edit();ارور برطرف شد به روز رسانی هم بدون ارور انجام شد ولی وضعییت تغییر نکرد نقل قول لینک به ارسال
imanfakhar 26231 ارسال شده در مرداد 92 گزارش بازنشر ارسال شده در مرداد 92 باید براسش تابع نوشت فرم شما از توابع اصلی خونده نمی شه و نوشتن تابع زمان بره اگر تونستم می نویسم می تونید با بررسی فایل press-this.php در مسیر پوشه wp-admin خودتون هم اینکار را بکنید 2 نقل قول لینک به ارسال
ali56 197 ارسال شده در مرداد 92 مالک گزارش بازنشر ارسال شده در مرداد 92 باید براسش تابع نوشت فرم شما از توابع اصلی خونده نمی شه و نوشتن تابع زمان بره اگر تونستم می نویسممی تونید با بررسی فایل press-this.php در مسیر پوشه wp-admin خودتون هم اینکار را بکنید بسیار بسیار ممنونم از راهنمایی هاتون چه وقت بکنید چه نکنیدالبته زیاد عجله ندارم چون تو روند سایت تاثیر زیادی نداره البته بودنش خیلی بهترهخودم هم که نمیتونم چون در این مورد هیچ اطلاعاتی ندارم مگر اینکه بگین چه کاری انجام بدم نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .