প্লাগইন (প্রধান) ফাইল এবং প্লাগইনের স্লাগের মধ্যে পার্থক্য এমন একটি জায়গা যেখানে ওয়ার্ডপ্রেস কোডেক্স আরও ভাল করতে পারে। আমি আপনার বিভ্রান্তিটি বুঝতে পেরেছি কারণ আমি এটি খুব সম্প্রতি অনুভব করেছি (হতাশার সাথে মিশ্রিত)।
এটি আমি ওয়ার্ডপ্রেস কোর কোডে কিছু "গোয়েন্দা কাজ" করে শিখেছি।
প্লাগইন ফাইল
এটি একটি অনন্য উপায় যা ওয়ার্ডপ্রেস একটি প্লাগইন সনাক্ত এবং রেকর্ড করে। এটি প্লাগইন ডিরেক্টরি এবং মূল প্লাগইন ফাইল (ফাইলের শিরোনাম সহ বিভিন্ন প্লাগইন বিবরণ যেমন সংস্করণ, লেখক, ইত্যাদি) দিয়ে তৈরি।
এটি দেখতে এমন কিছু লাগবে: your-plugin-directory/main-file.php
আপনি যদি সক্রিয় প্লাগইন ডেটা (এর মাধ্যমে ফিরে get_option( 'active_plugins' )
) দেখেন তবে দেখবেন যে প্লাগইনগুলি সঠিকভাবে সনাক্ত করার জন্য ওয়ার্ডপ্রেসের কেবল এই প্লাগইন ফাইলের প্রয়োজন।
আপনি এটিকে আপনার প্লাগইনের মূল ফাইল আপেক্ষিক পথ হিসাবে মনে করতে বাছাই করতে পারেন ( wp-content/plugins/
যে ডিরেক্টরিটির সাথে সম্পর্কিত)। আপনি এই জাতীয় কিছু দিয়ে মূল প্লাগইন ফাইলটির পরম পথটি "রচনা" করতে পারেন:trailingslashit( WP_PLUGIN_DIR ) . $plugin_main_file
কোর নিজেই প্লাগইন ফাইলটি উত্পন্ন করে:
$plugin_main_file = plugin_basename( trim( $plugin_main_file_absolute_path ) );
প্লাগইন স্লাগ
প্লাগইনটির জন্য "স্লাগ" কোনও ধরণের মানসম্মত আইডি হওয়ার প্রত্যাশা করবে যেমন পোস্ট স্লাগ পোস্টগুলির জন্য - সুতরাং আপনি এই "স্লাগ "টিকে ওয়ার্ডপ্রেস মূল ফাংশনগুলিতে সরবরাহ করতে এবং জিনিসগুলি চালিয়ে যাওয়ার জন্য ব্যবহার করতে পারেন।
আসলে তা না. প্লাগইন স্লাগগুলির জন্য উল্লেখগুলির জন্য মূল অনুসন্ধান করার পরে (বা বিষয়গুলির জন্য থিমগুলি) এবং প্রায় কিছুই না খুঁজে পাওয়ার পরে, আমি মনে করি এটি সম্পর্কে আমার একটা উপলব্ধি আছে।
কেবলমাত্র সত্যিকারের স্লাগগুলি হ'ল কোনও অনন্য ইউআরএল-এর মাধ্যমে অ্যাক্সেসযোগ্য জিনিসগুলির জন্য: পোস্ট, পৃষ্ঠাগুলি, করশক্তি ইত্যাদি That এটি কোনও কিছুর নাম (কোনও পোস্টের শিরোনামের মতো) নেওয়ার এবং এর ইউআরএল বান্ধব সংস্করণ তৈরির পুরো বিষয়টি: ব্যবহার করতে এটি একটি ইউআরএল।
তবে আমরা কোথায় ইউআরএলগুলিতে থিম / প্লাগিনগুলি "স্লাগস" ব্যবহার করব?
আমরা পৃথক ওয়ার্ডপ্রেস ইনস্টলেশনগুলিতে এটি করি না - ডাব্লুপি প্রশাসক বা সীমান্তেও নয়।
তবে, ওয়ার্ডপ্রেস কোড, ওয়ার্ডপ্রেস.অর্গ সাইট এর সাথে খুব একটা জড়িয়ে রয়েছে এমন একটি জায়গা । লোকেরা দু'জনের মধ্যে পার্থক্য করতে বেশ কষ্ট পাচ্ছে, এটি সহ ওয়ার্ডপ্রেস.আর.আর থিম বা প্লাগইন স্লাগগুলি কোনও পোস্ট বা পৃষ্ঠার স্লাগের মতোই কাজ করা উচিত তা বিবেচনা করা বিকাশকারীদের মধ্যে একরকম সাধারণ হয়ে উঠেছে ।
তারা একই উদ্দেশ্যে কিন্তু পৃথক ওয়েবসাইটে পরিবেশন করে । WordPress.org এ এগুলি অন্যের কাছ থেকে একটি থিম এবং বাকী একটি প্লাগইন (পছন্দ মতো ইউআরএল https://wordpress.org/plugins/akismet/
) অনন্যভাবে সনাক্ত করতে ব্যবহৃত হয় ।
কিন্তু যখন এটি পৃথক ওয়ার্ডপ্রেস ইনস্টলেশনের ক্ষেত্রে আসে , একই স্বাতন্ত্র্যতা গ্যারান্টিযুক্ত হতে পারে না কারণ এটি কার্যকর করার কোনও অধিকার নেই (ওয়ার্ডপ্রেস.আর.এজে)। সমস্ত প্লাগইন এবং থিমগুলি ওয়ার্ডপ্রেস.আর্গ থেকে আসে তবে এটি কাজ করতে পারে তবে কৃতজ্ঞতাবশত ঘটনাটি এটি নয়।
ওয়ার্ডপ্রেস কোড থিম / প্লাগইন স্লাগগুলির সাথে কী করে?
ওয়ার্ডপ্রেস কোর কোড থিম বা প্লাগইন ইনস্টল, সক্রিয়করণ, আপডেট করা, মুছে ফেলার মতো কাজ করতে থিম / প্লাগইন স্লাগগুলির উপর নির্ভর করে না ।
থিমগুলির জন্য, এটি থিম ডিরেক্টরিতে নির্ভর করে যেহেতু একটি থিমের মূল এন্ট্রি পয়েন্টটি style.css
ফাইল (আপনি নিজের থিমের বিবরণ শিরোনাম ধারণ করতে অন্য কোনও সিএসএস ফাইল ব্যবহার করতে পারবেন না)।
প্লাগইনগুলির জন্য, এটি প্লাগইন ডিরেক্টরি এবং প্রধান প্লাগইন ফাইলের উপর নির্ভর করে , যেহেতু প্লাগইনগুলি তাদের পছন্দ মতো তবে তাদের প্রধান ফাইলটি কল করতে পারে।
মূল বিষয় থিম / প্লাগইন স্লাগগুলি ব্যবহার করে শুধুমাত্র যখন এটি WordPress.org ডিরেক্টরি থেকে থিম এবং প্লাগইনগুলি পরিচালনা করে: প্লাগইনগুলির তালিকা আনা, আপডেটগুলি পরীক্ষা করা, ডিরেক্টরি ব্যবহারের ডেটাতে ফিরে রিপোর্ট করা ইত্যাদি।
প্লাগইন স্লাগগুলি সম্পর্কে জিনিসগুলি গুটিয়ে ফেলার জন্য : আপনি যখনই slug
এন্ট্রি সহ প্লাগইন ডেটা পাবেন তখনি 99% সময় এটি প্লাগইনের ওয়ার্ডপ্রেস.আরোগর্গ স্লাগকে উল্লেখ করবে ।
আমরা কীভাবে প্লাগইনগুলি সনাক্ত করতে পারি?
আপনি যদি ওয়ার্ডপ্রেস ইনস্টলেশনের কোনও নির্দিষ্ট প্লাগইনকে প্রোগ্রামগতভাবে সক্রিয়, আপডেট, নিষ্ক্রিয় করতে বা মুছতে চান তবে আপনার প্লাগইন ফাইলটি ব্যবহার করা দরকার । আপনি আপনার প্লাগইন এর প্রধান ফাইলটি থেকে এটি পেতে পারেন :
$plugin_file = plugin_basename( __FILE__ );
আপনি যদি অন্য একটি প্লাগইন থেকে একটি নির্দিষ্ট প্লাগইন লক্ষ্যবস্তু করতে চান তবে জিনিসগুলি কিছুটা জটিল হয়ে ওঠে কারণ আপনাকে "অনুমানের" কিছুটা উপর নির্ভর করতে হবে।
আপনি প্লাগিনের নামটি হার্ড-কোড করতে পারবেন, সমস্ত প্লাগইনের তালিকায় প্লাগইন অনুসন্ধান করতে পারেন (get_plugins () দেখুন এবং সেখান থেকে প্লাগইন ফাইলটি পেতে পারেন।
যদি আপনি কোনও শ্রেণি বা ফাংশন জানেন যা এই প্লাগইন দ্বারা সংজ্ঞায়িত করা হয় আপনি প্রতিবিম্ব ব্যবহার করতে পারেন ( ক্লাসগুলির জন্য এই উত্তরটি দেখুন এবং কার্যকারণের জন্য এটি একটি দেখুন )।
আমি আশা করি এটি আপনাকে এবং অন্যদের "প্লাগইন স্লাগস" এর সাথে মোকাবিলা করার জন্য কঠিন সময় কাটাতে সহায়তা করে। এটি আমাকে কয়েক ঘন্টা বাঁচাতে পারত :)