প্লেগ্রাউন্ড দিয়ে আপনার ডেমোর জন্য কন্টেন্ট প্রদান
ওয়ার্ডপ্রেস প্লেগ্রাউন্ড দিয়ে একটি ভালো ডেমো প্রদান করার জন্য আপনি যা করতে চাইতে পারেন তার মধ্যে একটি হলো আপনার প্লাগইন বা থিমের ফিচারগুলো আরও ভালোভাবে হাইলাইট করতে ডিফল্ট কন্টেন্ট লোড করা। এই ডিফল্ট কন্টেন্টে ইমেজ বা অন্যান্য অ্যাসেট অন্তর্ভুক্ত থাকতে পারে।
প্লেগ্রাউন্ড ইনস্ট্যান্সে কন্টেন্ট ইমপোর্ট (বা জেনারেট) করার জন্য আপনি ব্যবহার করতে পারেন এমন বেশ কয়েকটি ব্লুপ্রিন্ট স্টেপ এবং কৌশল রয়েছে:
importWxr
importWxr স্টেপ দিয়ে, আপনি একটি .xml ফাইলের মাধ্যমে আপনার নিজস্ব কন্টেন্ট ইমপোর্ট করতে পারেন যা আগে একটি বিদ্যমান ওয়ার্ডপ্রেস ইনস্টলেশন থেকে এক্সপোর্ট করা হয়েছে:
"steps": [
...,
{
"step": "importWxr",
"file": {
"resource": "url",
"url": "https://raw.githubusercontent.com/WordPress/blueprints/trunk/blueprints/install-activate-setup-theme-from-gh-repo/blueprint-content.xml"
}
},
...
]
Run Blueprint See blueprint.json
::: তথ্য
আপনার ইমপোর্ট করা কন্টেন্টে ইমেজ অন্তর্ভুক্ত করতে, একটি ভালো পদ্ধতি হলো ইমেজগুলো আপনার গিটহাব রিপোতে আপলোড করা এবং এক্সপোর্ট করা .xml ফাইলে তাদের জন্য পাথ সার্চ/রিপ্লেস করা এই URL ফরম্যাট ব্যবহার করে: https://raw.githubusercontent.com/{repo}/{branch}/{image_path}।
<!-- wp:image {"lightbox":{"enabled":false},"id":4751,"width":"78px","sizeSlug":"full","linkDestination":"none","align":"center","className":"no-border"} -->
<figure class="wp-block-image aligncenter size-full is-resized no-border">
<img src="https://raw.githubusercontent.com/WordPress/blueprints/trunk/blueprints/install-activate-setup-theme-from-gh-repo/images/avatars.png" alt="" class="wp-image-4751" style="width:78px" />
</figure>
<!-- /wp:image -->
:::
আপনার এক্সপোর্ট করা .xml ফাইল এবং যেকোনো রেফারেন্স করা অ্যাসেট (যেমন ইমেজ) আপনার গিটহাব রিপোজিটরিতে আপনার blueprint.json-এর একই ডিরেক্টরিতে আপলোড করার সুপারিশ করা হয়।
importWordPressFiles
importWordPressFiles স্টেপ দিয়ে, আপনি একটি প্রদত্ত .zip ফাইল থেকে আপনার নিজস্ব টপ-লেভেল ওয়ার্ডপ্রেস ফাইলগুলো ইনস্ট্যান্সের রুট ফোল্ডারে ইমপোর্ট করতে পারেন। উদাহরণস্বরূপ, যদি একটি .zip ফাইলে wp-content এবং wp-includes ডিরেক্টরি থাকে, তবে তারা প্লেগ্রাউন্ডের রুট ফোল্ডারে সংশ্লিষ্ট ডিরেক্টরিগুলো রিপ্লেস করবে।
এই zip ফাইলটি প্লেগ্রাউন্ড অপশন মেনুতে "Download as zip" অপশন দিয়ে যেকোনো প্লেগ্রাউন্ড ইনস্ট্যান্স থেকে তৈরি করা যায়।
আপনি একটি প্লেগ্রাউন্ড ইনস্ট্যান্সে আপনার ওয়ার্ডপ্রেস থিম বা প্লাগইনের জন্য একটি ডেমো প্রস্তুত করতে পারেন (ইমেজ এবং অন্যান্য অ্যাসেট সহ) এবং তারপর সেই ডেমোর একটি স্ন্যাপশট একটি .zip ফাইলে এক্সপোর্ট করতে পারেন। এই ফাইলটি পরে importWordPressFiles স্টেপ ব্যবহার করে ইমপোর্ট করা যায়।
{
"landingPage": "/",
"login": true,
"steps": [
{
"step": "importWordPressFiles",
"wordPressFilesZip": {
"resource": "url",
"url": "https://raw.githubusercontent.com/adamziel/playground-sites/main/playground-for-site-builders/playground.zip"
}
}
]
}
importThemeStarterContent
কিছু থিমে স্টার্টার কন্টেন্ট আছে যা একটি থিমের ফিচারগুলো হাইলাইট করতে প্রকাশ করা যায়।
importThemeStarterContent স্টেপ দিয়ে আপনি যেকোনো থিমের স্টার্টার কন্টেন্ট প্রকাশ করতে পারেন এমনকি যদি সেই থিমটি প্লেগ্রাউন্ড ইনস্ট্যান্সে অ্যাক্টিভেট করা না থাকে।
"steps": [
{
"step": "installTheme",
"themeData": {
"resource": "wordpress.org/themes",
"slug": "twentytwenty"
}
},
{
"step": "installTheme",
"themeData": {
"resource": "wordpress.org/themes",
"slug": "twentytwentyone"
},
"options": {
"activate": true
}
},
{
"step": "importThemeStarterContent",
"themeSlug": "twentytwenty"
}
]
আপনি installTheme স্টেপ দিয়ে একটি থিম ইনস্টল করার সময় এর importStarterContent অপশন true সেট করে থিমের স্টার্টার কন্টেন্ট প্রকাশ করতে পারেন:
{
"steps": [
{
"step": "installTheme",
"themeData": {
"resource": "wordpress.org/themes",
"slug": "twentytwenty"
},
"options": {
"activate": true,
"importStarterContent": true
}
}
]
}
wp-cli
আপনার থিম বা প্লাগইনের জন্য কন্টেন্ট জেনারেট করার আরেকটি উপায় হলো wp-cli স্টেপের মাধ্যমে যা আপনাকে WP-CLI কমান্ড যেমন wp post generate চালাতে দেয়:
{
"landingPage": "/wp-admin/edit.php",
"login": true,
"steps": [
{
"step": "wp-cli",
"command": "wp post generate --count=20 --post_type=post --post_date=1999-01-04"
}
]
}
আপনি বিদ্যমান কন্টেন্টের উপর ভিত্তি করে পোস্ট তৈরি করতে এবং প্লেগ্রাউন্ড ইনস্ট্যান্সে ইমেজ ইমপোর্ট করতে writeFile স্টেপের সাথে wp-cli স্টেপ ব্যবহার করতে পারেন:
{
"$schema": "https://playground.wordpress.net/blueprint-schema.json",
"landingPage": "/?p=4",
"login": true,
"steps": [
{
"step": "writeFile",
"path": "/wordpress/wp-content/postcontent.md",
"data": {
"resource": "url",
"url": "https://raw.githubusercontent.com/wordpress/blueprints/trunk/blueprints/wpcli-post-with-image/postcontent.md"
}
},
{
"step": "wp-cli",
"command": "wp post create --post_title='Welcome to Playground' --post_status='published' /wordpress/wp-content/postcontent.md"
},
{
"step": "writeFile",
"path": "/wordpress/wp-content/Select-storage-method.png",
"data": {
"resource": "url",
"url": "https://raw.githubusercontent.com/wordpress/blueprints/trunk/blueprints/wpcli-post-with-image/Select-storage-method.png"
}
},
{
"step": "wp-cli",
"command": "wp media import wordpress/wp-content/Select-storage-method.png --post_id=4 --title='Select your storage method' --featured_image"
}
]
}
::: পরামর্শ
কন্টেন্ট এবং ফিচার্ড ইমেজের মধ্যে সংযোগ দেখানো সম্পূর্ণ উদাহরণ দেখতে ব্লুপ্রিন্ট গ্যালারি থেকে "ইমেজ সহ পোস্ট যোগ করতে wp-cli ব্যবহার করুন" উদাহরণটি দেখুন।
:::
runPHP
runPHP স্টেপ দিয়ে আপনি আপনার ওয়ার্ডপ্রেস ইনস্টলেশনে তথ্য ইনসার্ট করার জন্য প্রয়োজনীয় যেকোনো PHP কোড চালাতে পারেন, উদাহরণস্বরূপ wp_insert_post ফাংশন ব্যবহার করে।
{
"landingPage": "/wp-admin/edit.php",
"login": true,
"steps": [
{
"step": "runPHP",
"code": "<?php require_once '/wordpress/wp-load.php'; wp_insert_post(array('post_title' => 'Simple post from PHP', 'post_content' => '<!-- wp:paragraph --><p>This is a simple post inserted with wp_insert_post</p><!-- /wp:paragraph -->', 'post_author' => 1, 'post_status' => 'publish')); ?>"
}
]
}