Ali#

برنامه نویسی
استفاده از bulk actions در افزونه

11 پست در این موضوع قرار دارد

سلام.

می خواهم هنگامی که مطالب از قسمت bulk actions (کارهای دسته جمعی)، ویرایش شد، به همه نوشته هایی که انتخاب شده و ویرایش شده اند یک برچسب اضافه شود.

من این کد را نوشتم ولی مشکلی که دارد این است که فقط به یک پست، برچسب را اضافه می کند در حالی که من می خواهم به همه نوشته هایی که انتخاب شده بودند اضافه کند.

این هم کد:

add_action('bulk_edit_custom_box', 'bulk_test');
function bulk_test() {
$post_ID = get_the_ID();
wp_set_post_tags($post_ID,'test',true );
}

دوستان می دانم مشکل از $post_ID است که فقط یک آی دی را وارد می کند. ولی راه حل را پیدا نمی کنم.

کسی می تواند راهنمایی کند؟

0

به اشتراک گذاری این پست


لینک به پست

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

منظورتون اینه که یه بولک اکشن جدید می خواید اضاف کنید ؟

0

به اشتراک گذاری این پست


لینک به پست

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

ببینید منظورم از ویرایش، بعنوان مثال تغییر دسته جمعی مطالب از draft به public هست.میخوام وقتی تیک کنار مطالب خورد و از قسمت بولک اکشن این تغییری که گفتم داده شد،  به همه مطالبی که در مرحله قبل انتخاب کرده بودیم، یک برچسب اضافه شود.

 

 

 

 

 

 

 

 

 

 

0

به اشتراک گذاری این پست


لینک به پست
در 2 ساعت قبل، Ali# گفته است :

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

ببینید منظورم از ویرایش، بعنوان مثال تغییر دسته جمعی مطالب از draft به public هست.میخوام وقتی تیک کنار مطالب خورد و از قسمت بولک اکشن این تغییری که گفتم داده شد،  به همه مطالبی که در مرحله قبل انتخاب کرده بودیم، یک برچسب اضافه شود.

 

 

 

 

 

 

 

 

 

 

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

add_action('bulk_edit_custom_box', 'bulk_test');
function bulk_test() {
$post_ids = ( ! empty( $_POST[ 'post_ids' ] ) ) ? $_POST[ 'post_ids' ] : array();
	if ( ! empty( $post_ids ) && is_array( $post_ids ) ) {
		foreach( $post_ids as $post_id ) {
wp_set_post_tags($post_id,'test',true );
}
}
}

 

 

1

به اشتراک گذاری این پست


لینک به پست
در 9 ساعت قبل، imanfakhar گفته است :

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


add_action('bulk_edit_custom_box', 'bulk_test');
function bulk_test() {
$post_ids = ( ! empty( $_POST[ 'post_ids' ] ) ) ? $_POST[ 'post_ids' ] : array();
	if ( ! empty( $post_ids ) && is_array( $post_ids ) ) {
		foreach( $post_ids as $post_id ) {
wp_set_post_tags($post_id,'test',true );
}
}
}


 

شرمنده جناب imanfakhar

عجله داشتم.

از وقتی که گذاشتید هم ممنون.

این کد شما رو هم امتحان کردم متاسفانه باز هم کار نکرد. کمی تغییر هم دادم نتیجه نداد!

0

به اشتراک گذاری این پست


لینک به پست

به اشتراک گذاری این پست


لینک به پست
در 3 دقیقه قبل، imanfakhar گفته است :

کار با آژاکس رو متوجه نشدم.

بعد اینجا اکشن wp_ajax_save_bulk_edit_book رو فراخوانی کرده در حالی که من bulk_edit_custom_box رو فراخوانی کردم.

فکر کنم بهمین مربوط بشه!

 

0

به اشتراک گذاری این پست


لینک به پست

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

در 11 دقیقه قبل، Ali# گفته است :

عد اینجا اکشن wp_ajax_save_bulk_edit_book رو فراخوانی کرده در حالی که من bulk_edit_custom_box رو فراخوانی کردم.

فکر کنم بهمین مربوط بشه!

شما مگه نمی خواهید همزمان با تغییر وضعیت تگهاتون رو هم بچسبونید ؟ 

اکشن درسته 

از کدکس وردپرس مرجع معتبر تری که نداریم شما باید آژاکس رو هم صدا بزنید تا آی دی های مطالب رو با متد post  براتون ارسال کنه تابعتون ورودی داشته باشه

حالا چرا می خواین کار به این عجیبی و نا معمولی رو انجام بدید اگه قراره یک تگ براشون مشترک کنید که همون موقع ویرایش تگ رو هم اضافه کنید و خودتون اذیت نکنید اگر هدفتون کار دیگه ایه بفرمایید دقیقا چه کاری هدفتون شاید راه درستش کار دیگه ای باشه

1

به اشتراک گذاری این پست


لینک به پست
در 3 دقیقه قبل، imanfakhar گفته است :

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

شما مگه نمی خواهید همزمان با تغییر وضعیت تگهاتون رو هم بچسبونید ؟ 

اکشن درسته 

از کدکس وردپرس مرجع معتبر تری که نداریم شما باید آژاکس رو هم صدا بزنید تا آی دی های مطالب رو با متد post  براتون ارسال کنه تابعتون ورودی داشته باشه

حالا چرا می خواین کار به این عجیبی و نا معمولی رو انجام بدید اگه قراره یک تگ براشون مشترک کنید که همون موقع ویرایش تگ رو هم اضافه کنید و خودتون اذیت نکنید اگر هدفتون کار دیگه ایه بفرمایید دقیقا چه کاری هدفتون شاید راه درستش کار دیگه ای باشه

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

در اصل کار با آژاکس رو متوجه نشدم. اون کد ها رو متوجه نشدم کجا باید فراخوانی بشه که این هوک اجرا بشه.

این که من میگم تگ اضافه بشه صرفاً یک مثال بود. در اصل میخوام با تغییر وضعیت، به هرکدام یک post_meta اضافه کنم.

در اصل:

add_action('bulk_edit_custom_box', 'bulk_test');
function bulk_test() {
$post_ids = ( ! empty( $_POST[ 'post_ids' ] ) ) ? $_POST[ 'post_ids' ] : array();
	if ( ! empty( $post_ids ) && is_array( $post_ids ) ) {
		foreach( $post_ids as $post_id ) {
		add_post_meta($post_id,$my_post_meta,$my_post_meta_content);
}
}
}

که شما تا حد زیادی مشکل رو حل کردید ($post_ids).

فقط ظاهراً همین مشکل کار با آژاکس است که این کد کار نمی کند!

0

به اشتراک گذاری این پست


لینک به پست

برای کار با آژاکس که خودش یک مثال کامل زده (کدهای مربوط به آژاکسش جی کوئریند نه PHP ) ولی شما نیازی بهش نداری

به اکشن save_post هوک بزن و تابعت رو اجرا کنه که یکی یکی هر مطلبی منتشر شد آی دیش رو بگیره و تابع رو براش اجرا کنه 

http://wordpress.stackexchange.com/questions/10853/how-to-get-and-edit-custom-fields-if-in-quick-edit

https://wp-types.com/forums/topic/update-a-custom-field-in-quick-edit/

http://wpdreamer.com/2012/03/manage-wordpress-posts-using-bulk-edit-and-quick-edit/

  و این ویدئو رو هم ببینید 

 

1

به اشتراک گذاری این پست


لینک به پست
نقل قول

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

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

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط shayan.m
      سلام
      دوستان در یک وب سایت چند فروشنده محصولات هست و می خواهم باهاشون ارتباط بر قرار کنم راه حلی دارید با ابزار inspect element یا... یا ابزار و برنامه دیگری بتونم شماره تلفن یا ایمیل فروشنده را پیدا کنم و باهاشون ارتباط بر قرار کنم؟
    • توسط amirdehghani
      سلام ببخشید من داخل سایت ام query monitor نصب کردم بعد بهم ارور slow query میده  میگه دو تا slow query داری 
      الان باید چیکار کنم که درست بشن با افزونه میشه درستش کرد یا باید کد های query رو تغییر بدم 
      لطفا کمک کنید خیلی مهمه تا امشب باید درستش کنم تحویل بدم
    • توسط irani91
      سلام . ما درحال طراحی یوآی (ui و ux)  متناسب با نیازمون برای راه اندازی یک وبسایت هستیم. بخش های مختلفی داره که نیاز به برنامه نویسی خواهد داشت. حالا در اینباره هم از دوستان نظرشون رو میخوایم و هم اینکه هزینه ای رو برای انجام برنامه نویسی این پروژه برآورد کنن. 
      سوال اول : تصمیم ما این هست که با وردپرس کار کنیم . وردپرس قالب های متنوع زیبایی داره که اگر شما پیشنهاد میکنید ، ما قالب رو از منبع اصلی میخریم و قسمت هایی که باید مشخصا برای ما برنامه نویسی بشه رو به اون قالب اضافه میکنیم. آیا این امکان وجود داره که بخش های موردنیازمون رو به قالب اضافه کنیم ؟ یا اینکه پشنهاد میکنید ، تمام برنامه نویسی از پایه و برای یوآی اختصاصی خود ما انجام بشه؟
      سوال دوم : اگر برنامه نویسی از پایه رو پیشنهاد میکنید ، لطفا هزینه ی تقریبی تکمیل پروژه برنامه نویسی روهم برآورد کنید ؟ (در ادامه توضیح مختصری در مورد کلیات کاری که قصد شروعش رو درایم خدمت شما شرح میدم)
       
      توضیحات تکمیلی : بخش هایی که سایت ما قراره داشته باشه ، شامل :
      1- بخش ثبت نام و پروفایل حرفه ای اختصاصی برای هر کاربر (کارفرما یا پیمانکار)
      2- امکان اضافه کردن ، حذف و ویرایش نمونه کارها در پروفایل شخصی
      3- امکان ثبت نام به عنوان کارفرما یا پیمانکار (کارفرما و پیمانکار هر کدام دارای صفحه ای با منوهای اختصاصی هستند)
      4- امکان ثبت پروژه توسط کارفرما و انتخاب پیمانکار برای انجام پروژه
      5- امکان جمع سپاری پروژه توسط کارفرما برای انتخاب پیمانکار از بین پیمانکاران واجد شرایط یا پیمانکارانی که اعلام آمادگی کردند
      6- صفحات اختصاصی (درباره ما ، تماس با ما ، پرسش و پاسخ ، ثبت نام و....) 
      7- لندینگ پیج اختصاصی با دسترسی های ویژه برای کاربران عضو و مهمان
      8- امکان ارسال نظر و رتبه توسط پیمانکار برای کارفرما و بالعکس
      9- سیستم پرداخت امن برای پیمانکار توسط کافرما (یک سیستم اختصاصی که کارفرما به واسطه ی این سیستم میتونه پرداخت در چند مرحله رو تا تکمیل پروژه ایجاد کنه)
      10- و....
      در واقع قصد طراحی یک سیستم داریم که بتونه به عنوان واسطه بین کارفرما و پیمانکار عمل کنه... دوستان منتظر پاسختون هستیم . ممنونم
    • توسط oghyanoos98
      سلام
      پلاگین برای وردپرس مانند سایت idigic رو میخواستیم برای فروش فالوور و لایک اینستاگرام
       فقط بخش سفارششو میخوایم سایت رو داریم خودمون، که اطلاعات یوزر رو از اینستا بگیره مثل سایت بالا و  به ای پی ای ما وصل شه و سفارشش رو اتومات ثبت کنه .
      ممنون
    • توسط masoudmosleh267
      سلام دوستان عزیز. امیدوارم که حالتون خوب باشه. من میخوام جایگاه توضیحات دسته بندی محصولات که تو پوسته بالای محصولات نشون میده رو ببرم پایین محصولات. مثل دیجی کالا. متن توضیحاتم کامل نشون نده و با زدن بیشتر کامل نشون بده. کی میتونه کمکم کنه؟ فایل ووکامرس باید تغییر کنه یا قالبم؟