cancer

عضو سایت
  • تعداد ارسال ها

    7
  • تاریخ عضویت

  • آخرین بازدید

اعتبار در انجمن

0

درباره cancer

  • درجه
    تازه کار
  1. با کمی تغییر این کد شما به نتیجه رسیدم بازم ممنونم که وقت گذاشتین
  2. نه این که نوشتم ایمیل بشه یا echo کنه صرفا مثال بود من فقط میخام که روی هر دکمه ای کلیک شد، id اون پست رو دریافت کنم و به عنوان ارگومان به یک تابع بفرستم، همین. تا اینجا هم که الان نوشتم برای تمام دکمه ها کار میکنه، فقط مشکل دکمه اول لیسته اون دکمه هایی با رنگ سبز مشخص کردم کاملا درست کار میکنن فقط همون دکمه ای که با رنگ قرمز علامت گذاشتم کار نمیکنه (چون نمیدونم چرا تگ form برای اون اضافه نمیشه) اگرم راه دیگه میدونین که میشه با کلیک بر روی دکمه ها id پست مربوطه رو بتونم بفرستم به یک تابعی، ممنون میشم بگین
  3. id پست از طریق هوک manage_posts_custom_column به تابع ارسال میشه (به عنوان پارامتر دوم): function display_column_content( $column, $post_id ) { if ($column == 'my_column'){ echo ' <form method="post"> <input type="hidden" name="postID" value="'.$post_id.'" /> <input type="submit" name="submit_getID" value="Get ID" class="button"> </form>'; } } add_action( 'manage_posts_custom_column' , 'display_column_content', 10, 2 ); بعد با استفاده از: <input type="hidden" name="postID" value="'.$post_id.'" /> submit میشه و پس از reload صفحه توسط کد زیر از طریق $_POST دریافت میشه if(isset($_POST['postID'])){ echo $_POST['postID']; // or do something with post id } که بعدش در صورت ست شدن میشه به صورت $_POST['postID'] برای مثال به عنوان آرگومان به تابع بفرستین if(isset($_POST['postID'])){ // for example, post id can be used to send an email $postObj = get_post($_POST['postID']); send_this_post_to_my_email($postObj); } اگه منظورتون چیز دیگه ای بود بگین اگه بتونم توضیح بدم
  4. سلام من قصد داشتم که یک ستون به لیست مدیریت تمام پست ها (لیستی که وقتی روی تمام نوشته ها کلیک می کنین ظاهر میشه) اضافه کنم که این کارو تونستم با کد زیر انجام بدم function add_myColumn( $columns ) { return array_merge( $columns, array( 'my_column' => 'Get Post ID' )); } add_filter( 'manage_posts_columns' , 'add_myColumn' ); function display_column_content( $column, $post_id ) { if ($column == 'my_column'){ echo ' <form method="post"> <input type="hidden" name="postID" value="'.$post_id.'" /> <input type="submit" name="submit_getID" value="Get ID" class="button"> </form>'; } } add_action( 'manage_posts_custom_column' , 'display_column_content', 10, 2 ); که همینطور که در تصویر زیر هم میبینین ستون به درستی ایجاد شده من میخوام زمانی که روی هر دکمه کلیک شد، post_id اون پست رو دریافت کنم برای همین من از یک <form> استفاده کردم که زمانی که sumbit میشه با کمک یه <input type="hidden"< تونستم id پست مربوطه رو از طریق کد زیر دریافت کنم که تا اینجا هم مشکلی نداشت if(isset($_POST['postID'])){ echo $_POST['postID']; // or do something with post id } اما مشکل کار اینجاست: اون فرمی که من بالا گذاشتم که از طریق اون submit کنم برای تمام دکمه ها اعمال میشه به غیر از اولین دکمه لیست یعنی زمانی که من Inspect Element میزنم html تمام دکمه ها به صورت زیر (فرم ایجاد شده): ولی فقط برای اولین دکمه لیست به صورت زیر (بدون فرم): اگه کسی از دوستان بتونه راهنمایی کنه که چرا برای اولین دکمه فرم ایجاد نمیشه (یا حداقل بگه که توی اینترنت چی سرچ کنم) ممنون میشم
  5. مشکلم پیدا شد درست می گفتین این کد مشکلی نداره من خود این add_action() رو چون داخل یه شرطی میزاشتم که مشکلش اون شرطه بود ممنونم وقت گذاشتین
  6. ممنونم ولی متاسفانه هیچ کدوم کار نمیکنه برای تستشون داخل همین 2 تا نمونه کدی که شما فرستادی من دستور file_put_contents("d:\\test.txt", "It's done!"); رو گذاشتم ولی هیچ فایلی ایجاد نشد یک نفر هم مثه اینکه این رو به عنوان یه باگ (البته چند ساله پیش) گزارش داده https://wordpress.org/support/topic/confirm-that-publish_future_post-hook-does-not-work/ شایدم باید پارامتر دیگه ای تنظیم بشه تا کار کنه دوستان اگه تجربه ی استفاده از این هوک رو دارن ممنون میشم راهنمایی کنین
  7. سلام برای اجرای یک تابع بعد از انتشار پستی که زمان بندی شده بود باید از هوک publish_future_post استفاده کنم؟ چون من یه سرچ زدم هوک publish_future_post و future_to_publish رو پیدا کردم ولی جفتشون کار نمیکنن یه هوک دیگه هم پیدا کردم به نام future_post که زمانی که روی دکمه «زمان بندی» کلیک میشه این اکشن اتفاق میفته هوک دیگه ای اگه هستش برای این کار معرفی کنین ممنون میشم