আমি নিজের জন্য এর সংমিশ্রণটি ব্যবহার করি:
- এককালীন স্ক্রিপ্টে উত্সর্গীকৃত একটি ফাইল
- স্ক্রিপ্টটি দুর্ঘটনাক্রমে একাধিকবার চালানো থেকে বিরত রাখতে একটি ক্ষণস্থায়ী ব্যবহার করে
- স্ক্রিপ্টটি কেবলমাত্র আমার দ্বারা পরিচালিত হয়েছে তা নিশ্চিত করতে সক্ষমতা-পরিচালনা বা ব্যবহারকারী-নিয়ন্ত্রণ ব্যবহার করে।
গঠন
আমি onetime.php
আমার অন্তর্ভুক্ত ফোল্ডারে একটি ফাইল ( ) ব্যবহার করি inc
যা এতে অন্তর্ভুক্ত থাকে এবং functions.php
ব্যবহারের পরে সেখান থেকে মুছে ফেলা হয়।
include( 'inc/onetime.php' );
লিপি নিজেই ফাইল
আমার সালে onetime.php
আমার ফাংশন f711_my_onetime_function()
স্থাপন করা হয়। যেহেতু এটি কোনও ফাংশন হতে পারে। আমি ধরে নিলাম আপনার স্ক্রিপ্টটি পরীক্ষা করা হয়েছে এবং সঠিকভাবে কাজ করে।
স্ক্রিপ্টের প্রয়োগের উপর নিয়ন্ত্রণ অর্জন করতে, আমি উভয়ই ব্যবহার করি
ক্ষমতা নিয়ন্ত্রণ
অন্য স্ক্রিপ্টগুলি দুর্ঘটনাক্রমে আমার স্ক্রিপ্ট কার্যকর করা থেকে বিরত রাখতে:
if ( current_user_can( 'manage_options' ) ) // check for administrator rights
অথবা
if ( get_current_user_id() == 711 ) // check if it is me - I prefer restricting the execution to me, not to all admins.
একটি ক্ষণস্থায়ী
নিজেকে একাধিকবার স্ক্রিপ্টটি দুর্ঘটনাক্রমে চালানো থেকে বিরত রাখতে।
$transient = 'f711_my_onetime_check';
if ( !get_transient( $transient ) ) // check if the function was not executed.
আমার ফাংশনে স্ক্রিপ্টটি সম্পাদন করার জন্য ফাইলটি f711_my_onetime_function()
দেখতে এমন হবে:
$transient = 'f711_my_onetime_check';
if ( get_current_user_id() == 711 && !get_transient( $transient ) ) {
set_transient( $transient, 'locked', 600 ); // lock function for 10 Minutes
add_action( 'wp_footer', 'f711_my_onetime_function' ); // execute my function on the desired hook.
}
function f711_my_onetime_function() {
// all my glorious one-time-magic.
}
চেকের উপস্থিতি উপস্থিত হওয়ার সাথে সাথেই আমি ক্ষণস্থায়ী সেট করার কারণটি হ'ল আমি চাই যে স্ক্রিপ্টটি দু'বার ব্যবহার করার ক্ষেত্রে স্ক্রিপ্টটি লক হয়ে যাওয়ার পরে ফাংশনটি কার্যকর করা হোক ।
আমার ফাংশন থেকে যদি আমার কোনও আউটপুট প্রয়োজন হয় তবে আমি এটি ফুটারে মন্তব্য হিসাবে মুদ্রণ করি বা কখনও কখনও আমি সামগ্রীটি ফিল্টারও করি।
লকআউটটাইমটি 10 মিনিটে সেট করা থাকে তবে আপনার প্রয়োজনের সাথে সামঞ্জস্য করা যায়।
পরিষ্কার কর
আমার স্ক্রিপ্ট সফল সঞ্চালনের পর আমার দ্বারা মুছে ফেলা include
থেকে functions.php
, এবং অপসারণ onetime.php
সার্ভার থেকে। যেহেতু আমি ক্ষণস্থায়ীটির জন্য একটি সময়সীমা ব্যবহার করেছি, আমার ডাটাবেস পরিষ্কার করার দরকার নেই, তবে আপনি ফাইলটি সরিয়ে দেওয়ার পরে অবশ্যই আপনি ক্ষণস্থায়ীটিকে মুছতে পারেন।