મુખ્ય સામગ્રીને બાયપાસ કરો

બ્લુપ્રિન્ટ બંડલ્સ

બ્લુપ્રિન્ટ બંડલ્સ સ્વયં-સમાવિષ્ટ પેકેજો છે જેમાં બ્લુપ્રિન્ટ ઘોષણા (blueprint.json) તેમજ તેને કમ્પાઇલ કરવા અને ચલાવવા માટે જરૂરી તમામ વધારાના સંસાધનો સામેલ હોય છે. આ સંપૂર્ણ વર્ડપ્રેસ પ્લેગ્રાઉન્ડ સેટઅપ્સને વહેંચવાનું અને શેર કરવાનું સરળ બનાવે છે.

બ્લુપ્રિન્ટ બંડલ્સ શું છે?​

બ્લુપ્રિન્ટ બંડલ એ ફાઇલોનો સંગ્રહ છે જેમાં નીચેની વસ્તુઓ સામેલ છે:

  1. blueprint.json ફાઇલ જે બ્લુપ્રિન્ટ કન્ફિગરેશન વ્યાખ્યાયિત કરે છે
  2. બ્લુપ્રિન્ટ દ્વારા સંદર્ભિત કોઈપણ વધારાના સંસાધનો (થીમ્સ, પ્લગઇન્સ, સામગ્રી ફાઇલો, વગેરે)

બ્લુપ્રિન્ટ બંડલ્સ વિવિધ ફોર્મેટમાં વહેંચી શકાય છે:

  • ટોચના સ્તરની blueprint.json ફાઇલ અને વધારાના સંસાધનો ધરાવતી ZIP ફાઇલ
  • git રિપોઝીટરીની અંદરની ડિરેક્ટરી જ્યાં અન્ય સંસાધનો સાથે blueprint.json રહેલો છે
  • તમારા કમ્પ્યુટર પર સ્થાનિક ડિરેક્ટરી
  • ઇનલાઇન કરવામાં આવેલી સંબંધિત ફાઇલો સાથેનો ઇનલાઇન જાવાસ્ક્રિપ્ટ ઑબ્જેક્ટ

બ્લુપ્રિન્ટ બંડલ્સનો ઉપયોગ કરવો​

વેબસાઇટ પર​

વર્ડપ્રેસ પ્લેગ્રાઉન્ડ વેબસાઇટ ડૉકમાં New → Blueprint URL દ્વારા અથવા ?blueprint-url= ક્વેરી પેરામીટર દ્વારા બ્લુપ્રિન્ટ બંડલ્સને સપોર્ટ કરે છે. તમે તમારા બ્લુપ્રિન્ટ બંડલ ધરાવતી ZIP ફાઇલની URL પ્રદાન કરી શકો છો:

https://playground.wordpress.net/?blueprint-url=https://example.com/my-blueprint-bundle.zip

ZIP ફાઇલમાં રૂટ સ્તર પર blueprint.json ફાઇલ હોવી જોઈએ, સાથે બ્લુપ્રિન્ટ દ્વારા સંદર્ભિત કોઈપણ વધારાના સંસાધનો હોવા જોઈએ.

CLI માં​

પ્લેગ્રાઉન્ડ CLI --blueprint= વિકલ્પ દ્વારા બ્લુપ્રિન્ટ બંડલ્સને સપોર્ટ કરે છે. તમે નીચેની વસ્તુઓ પ્રદાન કરી શકો છો:

  • બ્લુપ્રિન્ટ બંડલ ધરાવતી સ્થાનિક ડિરેક્ટરીનો પાથ
  • બ્લુપ્રિન્ટ બંડલ ધરાવતી સ્થાનિક ZIP ફાઇલનો પાથ
  • રિમોટ બ્લુપ્રિન્ટ બંડલની URL (http:// અથવા https://)

ઉદાહરણ તરીકે:

# Using a local ZIP file
npx @wp-playground/cli --blueprint=./my-blueprint.zip server

# Using a remote URL
npx @wp-playground/cli --blueprint=https://example.com/my-blueprint.zip server

# Using a local directory
npx @wp-playground/cli --blueprint=./my-blueprint-directory server

સુરક્ષા કારણોસર CLI મૂળભૂત રીતે સ્થાનિક ફાઇલોની ઍક્સેસને પ્રતિબંધિત કરે છે. જો તમારા બ્લુપ્રિન્ટને એ જ પેરેન્ટ ડિરેક્ટરીમાં ફાઇલોને ઍક્સેસ કરવાની જરૂર હોય, તો તમારે --blueprint-may-read-adjacent-files ફ્લેગનો ઉપયોગ કરીને સ્પષ્ટપણે પરવાનગી આપવી પડશે:

npx @wp-playground/cli --blueprint=./my-blueprint.json --blueprint-may-read-adjacent-files server

બ્લુપ્રિન્ટ બંડલ્સ બનાવવું​

મૂળભૂત માળખું​

મૂળભૂત બ્લુપ્રિન્ટ બંડલ કંઈક આના જેવું દેખાઈ શકે છે:

my-blueprint-bundle/
├── blueprint.json
├── theme.zip
├── plugin.zip
└── content/
└── sample-content.wxr

બંડલ કરેલા સંસાધનો સાથે ઉદાહરણ બ્લુપ્રિન્ટ​

અહીં એક blueprint.json ફાઇલનું ઉદાહરણ છે જે બંડલ કરેલા સંસાધનોનો સંદર્ભ આપે છે:

{
"landingPage": "/my-file.txt",
"steps": [
{
"step": "writeFile",
"path": "/wordpress/my-file.txt",
"data": {
"resource": "bundled",
"path": "/bundled-text-file.txt"
}
},
{
"step": "installTheme",
"themeData": {
"resource": "bundled",
"path": "/theme.zip"
}
},
{
"step": "installPlugin",
"pluginData": {
"resource": "bundled",
"path": "/plugin.zip"
}
},
{
"step": "importWxr",
"file": {
"resource": "bundled",
"path": "/content/sample-content.wxr"
}
}
]
}

આ ઉદાહરણમાં, બ્લુપ્રિન્ટ કેટલાક બંડલ કરેલ સંસાધનોનો સંદર્ભ આપે છે:

  • /bundled-text-file.txt પર આવેલી ટેક્સ્ટ ફાઇલ
  • /theme.zip પર આવેલી થીમ ZIP ફાઇલ
  • /plugin.zip પર આવેલી પ્લગઇન ZIP ફાઇલ
  • /content/sample-content.wxr પર આવેલી WXR કન્ટેન્ટ ફાઇલ

ZIP બંડલ બનાવવું​

ZIP બંડલ બનાવવા માટે, ખાલી તમારી blueprint.json અને તમામ જરૂરી સંસાધનો સાથે એક ડિરેક્ટરી બનાવો, અને પછી તેને ઝિપ કરો:

# Create a directory for your bundle
mkdir my-blueprint-bundle
cd my-blueprint-bundle

# Create your blueprint.json and add resources
# ...

# Zip it up
zip -r ../my-blueprint-bundle.zip .

ZIP ફાઇલ સ્ટ્રક્ચર ફ્લેક્સિબિલિટી​

બ્લુપ્રિન્ટ બંડલ્સ ZIP ફાઇલમાં બે સ્થાનો પર blueprint.json ને સપોર્ટ કરે છે:

  1. રૂટ લેવલ (પ્રમાણભૂત): blueprint.json સીધી ZIP રૂટ પર રહે છે
  2. એક ડિરેક્ટરી ઊંડે: blueprint.json સિંગલ ટોપ-લેવલ ડિરેક્ટરીની અંદર રહે છે

આનો અર્થ એ છે કે macOS ના રાઇટ-ક્લિક "Compress" ફીચર (જે સામગ્રીને ફોલ્ડરમાં લપેટે છે) સાથે બનાવેલ ZIP ફાઇલો આપોઆપ કાર્ય કરે છે. ડિટેક્શન દરમિયાન __MACOSX મેટાડેટા ડિરેક્ટરીને અવગણવામાં આવે છે.

ઉદાહરણ: આ બંને ZIP સ્ટ્રક્ચર્સ કાર્ય કરે છે:

# Structure A (root level)
my-bundle.zip/
├── blueprint.json
├── theme.zip
└── plugin.zip

# Structure B (one directory deep — macOS-style)
my-bundle.zip/
├── my-bundle/
│ ├── blueprint.json
│ ├── theme.zip
│ └── plugin.zip
└── __MACOSX/ ← ignored

જો બહુવિધ ટોપ-લેવલ ડિરેક્ટરીઓમાં blueprint.json હોય, તો પ્લેગ્રાઉન્ડ અસ્પષ્ટતા ટાળવા માટે ભૂલ પરત કરે છે.

મુશ્કેલીનિવારણ​

જો તમને બ્લુપ્રિન્ટ બંડલ્સ સાથે સમસ્યાઓનો સામનો કરવો પડે છે:

  1. ખાતરી કરો કે તમારી blueprint.json ફાઇલ તમારી ZIP ફાઇલના રૂટ લેવલ પર છે અથવા સિંગલ ટોપ-લેવલ ડિરેક્ટરીની અંદર છે
  2. તપાસો કે તમારા બંડલ કરેલા સંસાધન સંદર્ભોમાં તમામ પાથ સાચા છે
  3. ચકાસો કે તમારી ZIP ફાઇલ યોગ્ય રીતે ફોર્મેટ થયેલ છે
  4. CLI નો ઉપયોગ કરતી વખતે, તપાસો કે શું તમને --blueprint-may-read-adjacent-files ફ્લેગની જરૂર છે
  5. ખાતરી કરો કે તમામ જરૂરી સંસાધનો બંડલમાં સામેલ છે