স্কিপ করে মূল কন্টেন্ট এ যান

প্লাগইন ডেভেলপারদের জন্য ওয়ার্ডপ্রেস প্লেগ্রাউন্ড

ওয়ার্ডপ্রেস প্লেগ্রাউন্ড একটি উদ্ভাবনী টুল যা প্লাগইন ডেভেলপারদের সরাসরি ব্রাউজার এনভায়রনমেন্টে তাদের প্লাগইন বিল্ড, টেস্ট এবং শোকেস করার সুযোগ দেয়।

এই গাইডটি আপনাকে দেখাবে কীভাবে আপনার প্লাগইন ডেভেলপমেন্ট ওয়ার্কফ্লো উন্নত করতে, আপনার প্লাগইন কন্টেন্ট শোকেস করার জন্য লাইভ ডেমো তৈরি করতে এবং আপনার প্লাগইন টেস্টিং ও রিভিউ প্রক্রিয়া সহজ করতে ওয়ার্ডপ্রেস প্লেগ্রাউন্ড ব্যবহার করবেন।

:::তথ্য প্লেগ্রাউন্ড সম্পর্কে সেকশনে ওয়ার্ডপ্রেস প্লেগ্রাউন্ড ব্যবহার করে কীভাবে আপনার প্রোডাক্টস তৈরি, পরীক্ষা এবং লঞ্চ করবেন তা আবিষ্কার করুন। :::

একটি প্লাগইন সহ প্লেগ্রাউন্ড ইনস্ট্যান্স লঞ্চ করা

ওয়ার্ডপ্রেস প্লাগইন ডিরেক্টরিতে প্লাগইন

ওয়ার্ডপ্রেস প্লেগ্রাউন্ডের মাধ্যমে, আপনি প্লাগইন ডিরেক্টরিতে উপলব্ধ প্লাগইন যেকোনো প্লাগইন ইনস্টল ও অ্যাক্টিভেট করা অবস্থায় একটি ওয়ার্ডপ্রেস ইনস্টলেশন দ্রুত লঞ্চ করতে পারেন। এর জন্য আপনাকে শুধু প্লেগ্রাউন্ড ইউআরএল-এ plugin কোয়েরি প্যারামিটার যোগ করতে হবে এবং মান হিসেবে ওয়ার্ডপ্রেস ডিরেক্টরি থেকে প্লাগইনের স্লাগ ব্যবহার করতে হবে। উদাহরণস্বরূপ: https://playground.wordpress.net/?plugin=create-block-theme

:::পরামর্শ

আপনি প্লেগ্রাউন্ড ইনস্ট্যান্সে প্রতিটি প্লাগইনের জন্য plugin প্যারামিটারটি পুনরাবৃত্তি করে কতগুলো প্লাগইন ইনস্টল এবং অ্যাক্টিভেট করতে পারেন। উদাহরণস্বরূপ: https://playground.wordpress.net/?plugin=gutenberg&plugin=akismet&plugin=wordpress-seo। :::

আপনি প্লেগ্রাউন্ড ইনস্ট্যান্সে পাঠানো একটি ব্লুপ্রিন্টের installPlugin ধাপটি সেট করে ওয়ার্ডপ্রেস প্লাগইন ডিরেক্টরি থেকে যেকোনো প্লাগইন লোড করতে পারেন।

{
"landingPage": "/wp-admin/plugins.php",
"login": true,
"steps": [
{
"step": "installPlugin",
"pluginData": {
"resource": "wordpress.org/plugins",
"slug": "gutenberg"
}
}
]
}

   ব্লুপ্রিন্ট চালান   

ব্লুপ্রিন্টগুলো বেশ কয়েকটি উপায়ে একটি প্লেগ্রাউন্ড ইনস্ট্যান্সে পাঠানো যেতে পারে।

একটি গিটহাব রিপোজিটরিতে প্লাগইন

গিটহাব রিপোজিটরিতে সংরক্ষিত একটি প্লাগইনও ব্লুপ্রিন্টের মাধ্যমে একটি প্লেগ্রাউন্ড ইনস্ট্যান্সে লোড করা যেতে পারে।

installPlugin ব্লুপ্রিন্ট ধাপের pluginData প্রপার্টির সাহায্যে, আপনি একটি git:directory রিসোর্স ডিফাইন করতে পারেন যা প্লেগ্রাউন্ড ইনস্ট্যান্সে একটি রিপোজিটরির ফাইলগুলো থেকে একটি প্লাগইন বিল্ড করবে।

:::তথ্য

গত কয়েক মাস ধরে, গিটহাব রিপোজিটরি থেকে প্লাগইন লোড করার জন্য গিটহাব প্রক্সি একটি অত্যন্ত দরকারী টুল ছিল, কারণ এটি আপনাকে একটি নির্দিষ্ট ব্রাঞ্চ, ডিরেক্টরি, কমিট বা পিআর থেকে প্লাগইন লোড করার সুযোগ দিত। কিন্তু প্লেগ্রাউন্ডের সাম্প্রতিক উন্নতির ফলে, এই ফিচারটির আর প্রয়োজন নেই। গিটহাব প্রক্সি শীঘ্রই বন্ধ হয়ে যাবে, তাই দয়া করে আপনার ব্লুপ্রিন্টগুলোকে git:directory রিসোর্সে আপডেট করুন। :::

উদাহরণস্বরূপ, নিচের blueprint.json একটি গিটহাব রিপোজিটরি থেকে একটি প্লাগইন ইনস্টল করে:

{
"landingPage": "/wp-admin/admin.php?page=add-media-from-third-party-service",
"login": true,
"steps": [
{
"step": "installPlugin",
"pluginData": {
"resource": "git:directory",
"url": "https://github.com/wptrainingteam/devblog-dataviews-plugin",
"ref": "HEAD",
"refType": "refname"
}
}
]
}

:::পরামর্শ

আপনার প্লাগইন যদি গিটহাব-এ হোস্ট করা থাকে, তবে আপনি প্লেগ্রাউন্ড পিআর প্রিভিউ গিটহাব অ্যাকশন ব্যবহার করে আপনার পুল রিকোয়েস্টগুলোতে স্বয়ংক্রিয়ভাবে প্রিভিউ বাটন যোগ করতে পারেন। এটি রিভিউয়ারদের কোনো সেটআপ ছাড়াই আপনার পরিবর্তনগুলো তাৎক্ষণিকভাবে পরীক্ষা করার সুযোগ দেয়। বিস্তারিত জানার জন্য গিটহাব অ্যাকশন এর মাধ্যমে পিআর প্রিভিউ বাটন যোগ করা দেখুন। :::

   ব্লুপ্রিন্ট চালান   

গিটহাব-এর কোনো ফাইল বা Gist-এর কোড থেকে প্লাগইন

writeFile এবং activatePlugin ধাপগুলিকে একত্রিত করে আপনি একটি Gist বা গিটহাব-এ থাকা একটি ফাইলে সংরক্ষিত কোড থেকে তাৎক্ষণিকভাবে তৈরি করা একটি প্লাগইন সহ WP প্লেগ্রাউন্ড ইনস্ট্যান্স লঞ্চ করতে পারেন:

{
"landingPage": "/wp-admin/plugins.php",
"login": true,
"steps": [
{
"step": "login"
},
{
"step": "writeFile",
"path": "/wordpress/wp-content/plugins/cpt-books.php",
"data": {
"resource": "url",
"url": "https://raw.githubusercontent.com/WordPress/blueprints/trunk/blueprints/custom-post/books.php"
}
},
{
"step": "activatePlugin",
"pluginPath": "cpt-books.php"
}
]
}

   ব্লুপ্রিন্ট চালান   

:::তথ্য

ব্লুপ্রিন্ট গ্যালারির Install plugin from a gist উদাহরণটি দেখায় কীভাবে একটি Gist-এর কোড থেকে প্লাগইন লোড করতে হয়।

:::

ব্লুপ্রিন্ট ব্যবহার করে আপনার প্লাগইনের জন্য একটি ডেমো সেটআপ করা

কিছু প্লাগইন অ্যাক্টিভেট করা অবস্থায় একটি ওয়ার্ডপ্রেস প্লেগ্রাউন্ড ইনস্ট্যান্সের জন্য একটি লিঙ্ক প্রদানের সময়, আপনি ওই প্লাগইনগুলো ব্যবহার করে প্লেগ্রাউন্ড ইনস্ট্যান্সের প্রাথমিক সেটআপটি কাস্টমাইজ করতে চাইতে পারেন। প্লেগ্রাউন্ডের ব্লুপ্রিন্টের মাধ্যমে আপনি প্লাগইন লোড/অ্যাক্টিভেট করতে পারেন এবং প্লেগ্রাউন্ড ইনস্ট্যান্স কনফিগার করতে পারেন।

:::পরামর্

ব্লুপ্রিন্ট নিয়ে কাজ করার জন্য প্লেগ্রাউন্ড প্রজেক্ট কর্তৃক প্রদত্ত কিছু দরকারী টুল এবং রিসোর্স হলো:

  • বিভিন্ন ধরনের সেটআপ সহ ওয়ার্ডপ্রেস সাইট লঞ্চ করার বাস্তব উদাহরণ দেখতে ব্লুপ্রিন্ট গ্যালারি দেখুন।
  • ওয়ার্ডপ্রেস প্লেগ্রাউন্ড স্টেপ লাইব্রেরি টুলটি ওয়ার্ডপ্রেস প্লেগ্রাউন্ডের জন্য ব্লুপ্রিন্ট তৈরি করতে ড্র্যাগ বা ক্লিকের মাধ্যমে একটি ভিজ্যুয়াল ইন্টারফেস প্রদান করে। আপনি নিজের ধাপও তৈরি করতে পারেন!
  • ব্লুপ্রিন্ট বিল্ডার টুলটি আপনাকে আপনার ব্লুপ্রিন্ট অনলাইনে এডিট করতে এবং সরাসরি একটি প্লেগ্রাউন্ড ইনস্ট্যান্সে চালাতে দেয়। :::

ব্লুপ্রিন্টের প্রপার্টি এবং steps-এর মাধ্যমে আপনি প্লেগ্রাউন্ড ইনস্ট্যান্সের প্রাথমিক সেটআপ কনফিগার করতে পারেন, যা আপনার প্লাগইনের চমকপ্রদ ফিচার এবং কার্যকারিতা প্রদর্শনের জন্য প্রয়োজনীয় কন্টেন্ট এবং কনফিগারেশন প্রদান করে।

:::তথ্য ওয়ার্ডপ্রেস প্লেগ্রাউন্ডের সাথে একটি চমৎকার ডেমোর জন্য আপনার প্লাগইন এবং থিমের ডিফল্ট কন্টেন্ট, যার মধ্যে ইমেজ এবং অন্যান্য অ্যাসেট অন্তর্ভুক্ত, লোড করার প্রয়োজন হতে পারে। এ সম্পর্কে আরও জানতে আপনার ডেমোর জন্য কন্টেন্ট প্রদান গাইডটি দেখুন। :::

plugins

আপনার প্লাগইন যদি অন্য প্লাগইনের ওপর নির্ভরশীল হয়, তবে আপনি আপনার প্লাগইনের পাশাপাশি অন্য প্রয়োজনীয় প্লাগইনগুলো ইনস্টল করতে plugins শর্টহ্যান্ড ব্যবহার করতে পারেন।

{
"landingPage": "/wp-admin/plugins.php",
"plugins": ["gutenberg", "sql-buddy", "create-block-theme"],
"login": true
}

   ব্লুপ্রিন্ট চালান   

landingPage

আপনার প্লাগইনে যদি কোনো সেটিংস ভিউ বা অনবোর্ডিং উইজার্ড থাকে, তবে লোড হওয়ার পরে প্লেগ্রাউন্ড ইনস্ট্যান্সের যেকোনো পেজে স্বয়ংক্রিয়ভাবে রিডাইরেক্ট করতে আপনি landingPage শর্টহ্যান্ড ব্যবহার করতে পারেন।

{
"landingPage": "/wp-admin/admin.php?page=my-custom-gutenberg-app",
"login": true,
"plugins": ["https://raw.githubusercontent.com/WordPress/block-development-examples/deploy/zips/data-basics-59c8f8.zip"]
}

   ব্লুপ্রিন্ট চালান   

writeFile

writeFile ধাপের মাধ্যমে আপনি গিটহাব বা Gist-এ সংরক্ষিত একটি *.php ফাইলের কোড রেফারেন্স দিয়ে তাৎক্ষণিকভাবে যেকোনো প্লাগইন ফাইল তৈরি করতে পারেন।

এখানে একটি প্লাগইনের উদাহরণ রয়েছে যা কাস্টম পোস্ট টাইপ তৈরি করে। কোডটি লোড হওয়ার সাথে সাথে স্বয়ংক্রিয়ভাবে চালু হয় তা নিশ্চিত করতে এটি mu-plugins ফোল্ডারে রাখা হয়েছে:

{
"landingPage": "/wp-admin/",
"login": true,
"steps": [
{
"step": "writeFile",
"path": "/wordpress/wp-content/mu-plugins/books.php",
"data": {
"resource": "url",
"url": "https://raw.githubusercontent.com/wordpress/blueprints/trunk/blueprints/custom-post/books.php"
}
}
]
}

প্লাগইন ডেভেলপমেন্ট

প্লেগ্রাউন্ডের সাথে লোকাল প্লাগইন ডেভেলপমেন্ট এবং টেস্টিং

আপনার লোকাল ডেভেলপমেন্ট এনভায়রনমেন্টে প্লাগইনের ফোল্ডার থেকে, আপনি ওই প্লাগইনটি লোড এবং অ্যাক্টিভেট করা অবস্থায় দ্রুত একটি লোকাল প্লেগ্রাউন্ড ইনস্ট্যান্স লোড করতে পারেন।

আপনার পছন্দের কমান্ড লাইন প্রোগ্রাম ব্যবহার করে প্লাগইনের রুট ডিরেক্টরি থেকে @wp-playground/cli কমান্ড ব্যবহার করুন।

Visual Studio Code IDE-এর মাধ্যমে কাজ করার সময়, আপনি আপনার প্লাগইনের রুট ডিরেক্টরিতে Visual Studio Code এক্সটেনশন ব্যবহার করতে পারেন।

উদাহরণস্বরূপ:

git clone git@github.com:wptrainingteam/devblog-dataviews-plugin.git
cd devblog-dataviews-plugin
npx @wp-playground/cli server --auto-mount

একটি প্লেগ্রাউন্ড ইনস্ট্যান্সে আপনার লোকাল পরিবর্তনগুলো দেখুন এবং আপনার পরিবর্তনের সাথে সরাসরি একটি গিটহাব রিপোজিটরিতে পিআর তৈরি করুন

Google Chrome-এর মাধ্যমে আপনি একটি প্লেগ্রাউন্ড ইনস্ট্যান্সকে আপনার লোকাল প্লাগইনের কোড এবং আপনার প্লাগইনের গিটহাব রিপোজিটরির সাথে সিনক্রোনাইজ করতে পারেন। এই সংযোগের মাধ্যমে আপনি যা করতে পারেন:

  • আপনার লোকাল পরিবর্তনগুলো লাইভ (প্লেগ্রাউন্ড ইনস্ট্যান্সে) দেখুন
  • আপনার করা পরিবর্তনের মাধ্যমে গিটহাব রিপোজিটরিতে পিআর তৈরি করুন

এখানে এই ওয়ার্কফ্লোর একটি সংক্ষিপ্ত ডেমো দেওয়া হলো:

:::তথ্য আরও তথ্যের জন্য প্লেগ্রাউন্ড সম্পর্কে > তৈরি করুন > আপনার লোকাল ফোল্ডারের সাথে প্লেগ্রাউন্ড ইনস্ট্যান্স সিনক্রোনাইজ করুন এবং গিটহাব পুল রিকোয়েস্ট তৈরি করুন দেখুন। :::