লক্ষ
আমি wp_schedule_single_event( )
কোনও একক ইভেন্ট সম্পাদন করতে ব্যবহার করতে চাই যা ব্যবহারকারী কোনও ফর্ম জমা দেওয়ার 8 মিনিটের পরে আমাকে একটি ইমেল প্রেরণ করে।
সমস্যাটি
নিম্নলিখিত কোডটি আমার রয়েছে functions.php
:
function nkapi_send_to_system( $args ) {
wp_mail( 'xxx', 'xxx', $args );
}
add_action( 'nkapi_send', 'nkapi_send_to_system' );
function schedule_event( $id ) {
wp_schedule_single_event( current_time( 'timestamp' ) + 480, 'nkapi_send', array( $id ) );
}
এবং নিম্নলিখিত কোডটি কল করতে ব্যবহৃত হয় schedule-event
:
schedule_event( $_SESSION['insert_id'] ); // the $_SESSION var contains an INT
8 মিনিটেরও বেশি অপেক্ষা করার পরে আমার ইনবক্সে কোনও ইমেল ছিল না।
আমি কি চেষ্টা করেছি
কোর কন্ট্রোলের মাধ্যমে প্লাগইনটি দেখা যাবে যে ক্রিক জবগুলি নির্ধারিত হয়েছে।
বেশ কয়েকটি পরিবর্তনের পরে আমি সেগুলি বেশ সঠিকভাবে পরিচালনা করতে সক্ষম হয়েছি এবং আরও ভাল, যখন আমি "এখনই চালান" টিপুন, আমি আসলে আমার ইনবক্সে একটি ইমেল পাই get
আমি যখন 8 মিনিটের পরে আমার সাইটটিতে যাই তখন ক্রোন কেন কার্যকর হয় না exec এই কোডটির সাথে সম্ভবত ভুল কী? আমাকে বলতে হবে যে এটি আমার প্রথমবারের মতো ডাব্লুপি ক্রোন ব্যবহার করছে।
আমি আরও চেষ্টা করেছি
ভ্যানকোডার আইডি- এর মন্তব্যের পরে, যদি আমি নিম্নলিখিত কোডটি সরাসরি এতে প্রবেশ করি তবে কোডটি কাজ করে কিনা তা পরীক্ষা করার সিদ্ধান্ত নিয়েছে functions.php
:
function schedule_event( $id ) {
wp_schedule_single_event( time(), 'nkapi_send', array( $id ) );
}
if ( isset( $_SESSION['insert_id'] ) ) {
if ( ! array_key_exists( 'insert_scheduled', $_SESSION ) || $_SESSION['insert_scheduled'] != $_SESSION['insert_id'] ) {
schedule_event( $_SESSION['insert_id'] );
$_SESSION['insert_scheduled'] = $_SESSION['insert_id'];
}
}
এই কোডটির অবক্ষয়টি হ'ল, এই কোডটি কার্যকর করার আগে ব্যবহারকারীর অন্য পৃষ্ঠায় যেতে হবে। তবে অন্যদিকে, এটি কাজ করে না তাই এটি আমার প্রথম সমস্যা হবে না ...
schedule_event( )
, শর্টকোড দ্বারা লোড হওয়া অন্তর্ভুক্ত ফাইলটির শীর্ষে বলতে দিন।
schedule_event( $_SESSION['insert_id'] );
বহিস্কার করা হয় ?