html2wp / html2wp डॉक्यूमेंटेशन / प्लगइन
Claude Code और Codex के लिए प्लगइन
Claude Code या Codex में html2wp प्लगइन कैसे इंस्टॉल करें और उससे साइट को WordPress थीम में कैसे बदलें, स्टेप दर स्टेप, तैयार पेजों की जाँच तक। क्या आप डेस्कटॉप ऐप में कन्वर्ट कर रहे हैं? ऐप के स्टेप उसके अपने डॉक्यूमेंटेशन में हैं।
लाइसेंस key कब चाहिए
आज़माने के लिए key नहीं चाहिए। फ़्री टियर सबके लिए खुला है और उसमें पाँच-पाँच पेज तक के तीन कन्वर्ज़न और पाँच re-run मिलते हैं। दोनों संख्याएँ हर IP पते के हिसाब से गिनी जाती हैं। क्लाइंट के काम, पाँच से ज़्यादा पेज वाली साइटों और WooCommerce शॉप के लिए लाइसेंस चाहिए। इसे आप कीमतों वाले पेज पर खरीदते हैं, और key ईमेल से आती है। खरीद कैसे होती है।
इंस्टॉल
प्लगइन दो GitHub रिपॉज़िटरी में है, एक Claude Code के लिए और एक Codex के लिए। दोनों में एक ही कंटेंट और एक ही वर्शन नंबर है। फ़र्क सिर्फ़ इतना है कि हर टूल उन्हें कैसे लोड करता है। वही रिपॉज़िटरी इंस्टॉल करें जो आपके टूल की है, क्योंकि दूसरी लोड नहीं होगी।
| टूल | रिपॉज़िटरी |
|---|---|
| Claude Code | iOSDevSK/html2wp-cc-plugin |
| Codex | iOSDevSK/html2wp-codex-plugin |
अपना टूल चुनें और दोनों कमांड एक के बाद एक चलाएँ:
/plugin marketplace add iOSDevSK/html2wp-cc-plugin/plugin install html2wp@html2wpपहली कमांड GitHub से प्लगइन कैटलॉग (marketplace) जोड़ती है। फिर दूसरी कमांड उसमें से html2wp इंस्टॉल करती है। Codex को अपनी अलग रिपॉज़िटरी चाहिए, क्योंकि वह प्लगइन .agents/plugins/marketplace.json फ़ाइल से ढूँढता है, और Claude Code वाली रिपॉज़िटरी में यह फ़ाइल नहीं है।
अपडेट
अपडेट की कमांड का नाम हर टूल में अलग है। Codex में यह upgrade है, Claude Code में update:
/plugin marketplace update html2wpClaude Code में ऑटोमैटिक अपडेट चालू करें
Claude Code थर्ड-पार्टी कैटलॉग के लिए ऑटोमैटिक अपडेट चालू नहीं करता। उनके बिना नया प्लगइन वर्शन तभी मिलता है जब आप खुद माँगें, और कुछ वर्शन सुरक्षा बग ठीक करते हैं। इन्हें चालू करने के लिए /plugin खोलें, Marketplaces में html2wp चुनें और auto-update चालू करें।
इंस्टॉल किया गया वर्शन देखने के लिए Codex में codex plugin list चलाएँ। Claude Code में /plugin → Marketplaces → html2wp पर जाएँ।
अगर अपडेट के बाद Codex में वर्शन नहीं बदला, तो Codex के पास पुरानी कॉपी सेव है। उसे मिटाएँ और प्लगइन दोबारा इंस्टॉल करें:
rm -rf ~/.codex/plugins/cache/html2wpcodex plugin marketplace upgrade && codex plugin add html2wp@html2wpअगर इससे भी काम न बने, तो हो सकता है Codex के पास मैनुअल इंस्टॉल से बनी कोई दूसरी, पुरानी कॉपी भी हो। कमांड codex plugin marketplace list हर कैटलॉग दिखाती है। अगर वहाँ html2wp@<other-name> दिखे, तो उसे codex plugin remove html2wp@<that-name> से हटा दें।
ज़्यादातर काम html2wp सेवा में होता है, और सेवा खुद अपडेट होती है। इसलिए आपका अगला कन्वर्ज़न पहले से नए वर्शन पर चलता है। आपको सिर्फ़ वह हिस्सा अपडेट करना होता है जो आपके कंप्यूटर पर चलता है: जाँचें, स्क्रिप्ट और बाहर जाने वाले डेटा का फ़िल्टर। हर वर्शन में क्या बदला, यह GitHub पर commit हिस्ट्री में है।
ज़रूरतें
| Node.js | वर्शन 20 या नया |
|---|---|
| Python 3 | Playwright (chromium) और Pillow पैकेज के साथ |
| Docker | docker compose सहित, जो टेस्ट WordPress चलाता है |
| दूसरे टूल | php-cli, jq, curl, bash, tar |
| टारगेट साइट | WordPress 6.6 या नया |
यह सब आपको खुद जाँचने की ज़रूरत नहीं है। कन्वर्ज़न शुरू करते ही प्लगइन पहले आपका कंप्यूटर जाँचता है और बताता है कि क्या कमी है:
Node.js ok v22.14.0 Python ok 3.12.4 Playwright MISSING mirroring, prerendering and every screenshot Docker NOT RUNNING installed, but the daemon is not up
जो पैकेज सिर्फ़ आपके यूज़र फ़ोल्डर में इंस्टॉल होते हैं, जैसे Playwright या chromium ब्राउज़र, उन्हें प्लगइन आपके लिए इंस्टॉल करने की पेशकश करता है। हर कमांड से पहले वह पूछता है। जो चीज़ें पूरे सिस्टम को बदलती हैं, जैसे Docker Desktop या नया Node.js, उनके बारे में वह सिर्फ़ बताता है। फिर वह इंतज़ार करता है कि आप उन्हें खुद इंस्टॉल करें।
अगर आप Python पैकेज हाथ से इंस्टॉल करना चाहते हैं:
python3 -m pip install playwright pillow && python3 -m playwright install chromiumकौन-सा मॉडल लें
कन्वर्ज़न के दौरान AI को बहुत से फ़ैसले लेने पड़ते हैं। जैसे होम पेज कौन-सा है, कोई जाँच क्यों फ़ेल हुई, या क्या क्लाइंट को दो स्क्रीनशॉट का फ़र्क दिखेगा भी। इसलिए मॉडल का चुनाव नतीजे पर किसी भी दूसरी सेटिंग से ज़्यादा असर डालता है।
| टूल | सुझाया गया मॉडल |
|---|---|
| Claude Code | Opus 5, सलाहकार के रूप में Fable 5 के साथ। |
| Codex | Luna, reasoning effort xhigh पर। |
सस्ता विकल्प
xhigh पर Luna के साथ Codex कम खर्चीला है, और इसके नतीजे औसत से बेहतर हैं। अगर कन्वर्ज़न की लागत आपके लिए मायने रखती है, तो यही जोड़ी चुनें।
Claude Code में काम Opus 5 करता है, और ज़रूरी फ़ैसलों पर Fable 5 से सलाह ली जाती है। कन्वर्ज़न ज़्यादातर इन्हीं फ़ैसलों पर गलत होता है।
लाइसेंस key
फ़्री टियर पर key नहीं चाहिए, इसलिए यह हिस्सा छोड़ दें। अगर आपके पास लाइसेंस है, तो पहले कन्वर्ज़न से पहले key अपने कंप्यूटर पर सेव करें। यह सिर्फ़ एक बार करना होता है, किसी भी फ़ोल्डर से:
mkdir -p ~/.config/html2wpprintf '%s' 'YOUR-KEY' > ~/.config/html2wp/licencechmod 600 ~/.config/html2wp/licenceKey को आप environment variable H2WP_KEY में भी दे सकते हैं, जो फ़ाइल से ऊपर माना जाता है। फ़ाइल ज़्यादा सुरक्षित है, क्योंकि तब key आपकी टर्मिनल हिस्ट्री में नहीं जाती।
फ़ाइल में वह html2wp लाइसेंस key जाती है जो Pro खरीदने पर मिलती है। Visual Edit Pro की key वहाँ नहीं जाती। उसे आप उस साइट के Visual Edit प्लगइन में डालते हैं जिसे आप एडिट करते हैं, और वह कन्वर्ज़न के लिए काम नहीं करती।
कन्वर्ज़न शुरू करने से पहले key सेव करें
शुरुआत में ही प्लगइन तय करता है कि आप कितने पेज कन्वर्ट कर सकते हैं। अगर तब तक key नहीं है, तो वह पाँच पेज की फ़्री सीमा के हिसाब से कन्वर्ज़न प्लान करता है। कन्वर्ज़न चलते समय जोड़ी गई key इसे नहीं बदलती।
Key वैध है या नहीं, किस काम आती है और कब तक चलेगी, यह जानने के लिए npx html2wp-license YOUR-KEY चलाएँ। नतीजे का मतलब लाइसेंस पेज पर key की जाँच में समझाया गया है। लाइसेंस में क्या शामिल है और उसे कैसे खरीदें, यह लाइसेंस पेज पर है।
प्रोजेक्ट कन्वर्ट करना
जिस प्रोजेक्ट को कन्वर्ट करना है, उसके फ़ोल्डर में टर्मिनल खोलें और वहीं अपना एजेंट चालू करें:
git clone https://github.com/YOU/YOUR-LOVABLE-PROJECTcd YOUR-LOVABLE-PROJECTcodexअगर आप Claude Code इस्तेमाल करते हैं, तो आखिरी लाइन में codex की जगह claude लिखें।
फिर एजेंट को एक ही कमांड दें:
/html2wp:html2wp convert this projectबस इतना ही। आप npm install या npm run build नहीं चलाते, और कुछ कॉन्फ़िगर नहीं करते। Bolt, v0, shadcn या Next.js एक्सपोर्ट वाले प्रोजेक्ट भी ऐसे ही कन्वर्ट होते हैं। Claude Code में आप सिर्फ़ /html2wp:html2wp भी लिख सकते हैं, या Codex से html2wp इस्तेमाल करने को कह सकते हैं। तब प्लगइन आपसे पूछता है कि क्या कन्वर्ट करना है।
कन्वर्ज़न के पहले कुछ मिनट
> convert this project
Checking this machine first…
Node.js ok v22.14.0
Playwright MISSING
Two Python packages are missing. Shall I install them? (they go in your
user directory, no root)
> yes
… installed. Building the project, then prerendering it.
7 routes found: /, /about, /pricing, /blog, /blog/launch, /contact, /faq
Decided: /blog is the listing, /blog/launch an article, the rest are pages.
Written to the manifest; carrying on.
आखिरी लाइनों में प्लगइन ने दर्ज किया कि उसने पेजों को कैसे बाँटा: /blog लेखों की सूची है, /blog/launch एक लेख है और बाकी सामान्य पेज हैं। आखिर में तैयार साइट पर इस फ़ैसले को जाँचें।
दूसरे इनपुट
कमांड convert this project उस फ़ोल्डर को कन्वर्ट करती है जिसमें आप हैं। अगर फ़ाइलें कहीं और हैं, तो उनका पाथ लिखें, जैसे convert ./dist।
| आपके पास क्या है | आप क्या लिखते हैं |
|---|---|
| वह प्रोजेक्ट जिससे साइट बनती है: Lovable, Bolt, v0, Vite, Astro, Next.js एक्सपोर्ट | convert this project |
तैयार .html फ़ाइलों, इमेज और स्टाइल वाला फ़ोल्डर | convert ./folder-name |
इनपुट हमेशा आपकी डिस्क पर होना चाहिए। प्लगइन लाइव साइट का पता कन्वर्ट नहीं करता। उसे वे फ़ाइलें चाहिए जिनसे साइट बनी है, न कि वह जो ब्राउज़र दिखाता है।
Lovable प्रोजेक्ट कैसे कन्वर्ट होता है
Lovable ऐप React में बना होता है। उसकी index.html में सिर्फ़ एक खाली एलिमेंट और एक स्क्रिप्ट होती है, और पेज ब्राउज़र में ही बनता है। इसलिए प्लगइन पहले प्रोजेक्ट बिल्ड करता है, उसे असली ब्राउज़र में खोलता है और हर पेज को तैयार HTML के रूप में सेव करता है। वह ऐसा कंटेंट भी पकड़ता है जो स्क्रिप्ट चलने के बाद ही दिखता है, जैसे खुले accordion या ड्रॉपडाउन मेन्यू। फिर इन पेजों से थीम बनती है। पूरी जानकारी Lovable से WordPress वाली गाइड में है।
यह आपके लिए क्या तय करता है
कौन-सा पेज क्या है
एक फ़ैसले का नतीजे पर सबसे ज़्यादा असर होता है: होम पेज कौन-सा है, लेखों की सूची कौन-सी है, कौन-से पेज लेख हैं और कौन-से प्रोडक्ट। प्लगइन यह पेज कोड से तय करता है, इसे लिख लेता है और बिना पूछे आगे बढ़ता है। वह सिर्फ़ तब रुकता है जब तय न कर पाए। जैसे, जब साइट में आपकी सीमा से ज़्यादा पेज हों, या दो पेज एक जैसे लगें।
अगर यह फ़ैसला गलत हो, तो सुधार सस्ता है। आप बँटवारा ठीक करते हैं और कन्वर्ज़न दोबारा चलाते हैं। यह एक re-run है, और यह आपकी कन्वर्ज़न सीमा में नहीं गिना जाता।
फिर यह ज़्यादातर खुद चलता है
Flash में करीब आधा घंटा लगता है, Full में करीब एक घंटा, जो पेजों की संख्या और आपके कंप्यूटर की रफ़्तार पर निर्भर है। इस बीच प्लगइन साइट बिल्ड करता है, उसकी तुलना मूल से करता है और उसे कन्वर्ज़न के लिए html2wp सेवा को भेजता है। उसके बाद वह तैयार थीम को आपके कंप्यूटर पर Docker के एक अस्थायी WordPress में इंस्टॉल करता है और वहाँ टेस्ट करता है।
जाँच जो छोड़ी नहीं जा सकती
आखिर में प्लगइन हर पेज को मूल के बगल में एक इमेज में दिखाता है। हर इमेज देखें और बताएँ कि आपको क्या दिखा।
पेज किसी इंसान को क्यों जाँचने चाहिए
ऑटोमैटिक जाँच संख्याओं की तुलना करती है, इसलिए वह ऐसी गलतियाँ भी जाने देती है जो इंसान को तुरंत दिख जाएँ। एक कन्वर्ज़न में पेज के नीचे का पूरा एक सेक्शन गायब था। फिर भी तुलना में फ़र्क सिर्फ़ 0.4% आया, इसलिए जाँच पास हो गई। उस समय तक थीम का ZIP तैयार हो चुका होता है। इसी जाँच से आप तय करते हैं कि उसे सौंपा जा सकता है या नहीं।
आपको क्या मिलता है
- ZIP फ़ाइल के रूप में थीम। इसे आप WordPress में Appearance → Themes → Add New → Upload Theme से अपलोड करते हैं। प्लगइन टूटी हुई थीम बनाता ही नहीं। जैसे, अगर PHP में सिंटैक्स एरर हो, कंटेंट गायब हो, थीम स्क्रीनशॉट का साइज़ गलत हो, या शॉप में कुछ खरीदा न जा सके।
- रिपोर्ट
CONVERSION-REPORT.md, ZIP वाले फ़ोल्डर में ही। इसमें कन्वर्ट हुए पेज, जोड़े गए मेन्यू, जाँच में आपको मिली हर बात, कन्वर्ज़न की हर चेतावनी और बचे हुए काम की सूची होती है। - Visual Edit Lite का लिंक, जो पॉइंट-एंड-क्लिक बदलावों के लिए मुफ़्त एडिटर है। एडिटर थीम का हिस्सा नहीं है, और थीम उसके बिना भी काम करती है। Visual Edit Pro एक अलग पेड लाइसेंस है।
थीम स्वतंत्र है। पेज, ब्लॉग, फ़ॉर्म, मेन्यू, SEO और रीडायरेक्ट उसके कोड का हिस्सा हैं और बिना प्लगइन के काम करते हैं। कोड पढ़ने लायक PHP, CSS और JavaScript है। यह आपका है और हमसे बँधा नहीं है। थीम कहीं कनेक्ट नहीं होती। क्लिक करके इसे एडिट करने का तरीका ऐप डॉक्यूमेंटेशन के Visual Edit वाले हिस्से में है।
कंप्यूटर से क्या बाहर जाता है
ब्राउज़र वाला काम आपका कंप्यूटर करता है: पेज बिल्ड करना, स्क्रीनशॉट की तुलना करना और आखिरी जाँच के लिए Docker में अस्थायी WordPress चलाना। थीम खुद html2wp सेवा बनाती है। इसलिए प्लगइन बनी हुई साइट उसे भेजता है और बदले में थीम पाता है।
थीम की जाँच आपकी तरफ़ चलती है, इसलिए सेवा उनके नतीजे नहीं देखती। आखिर में प्लगइन उन्हें सेवा को भेजता है। यह ज़रूरी है: जब तक पिछला कन्वर्ज़न अपने नतीजे नहीं भेजता, सेवा अगला कन्वर्ज़न शुरू नहीं करती।
- क्या भेजा जाता है: जाँचों के नाम, वे पास हुईं या नहीं, पेजों की गिनती, सबसे खराब मिलान प्रतिशत और फ़ेल हुए पेजों के छोटे नाम, जैसे
aboutयाpricing। - क्या नहीं भेजा जाता: साइट का पता या डोमेन, कोड, टेक्स्ट, स्क्रीनशॉट, फ़ाइल पाथ, लाइसेंस key या साइट का नाम। प्लगइन सिर्फ़ पहले से तय फ़ील्ड भेजता है, और कुछ नहीं।
- खुद जाँचें: कमांड
send-verdicts.sh <workspace> --dry-runठीक वही दिखाती है जो भेजा जाएगा, पर भेजती कुछ नहीं। यह एक छोटी स्क्रिप्ट है जिसे आप पढ़ सकते हैं।
प्लगइन कोई और डेटा नहीं भेजता, और तैयार थीम कुछ भी नहीं भेजती। पूरा विवरण, डेटा कितने समय तक रखा जाता है समेत, गोपनीयता नीति वाले पेज पर है।
बग रिपोर्ट करना
अगर कन्वर्टर खुद कोई गलती करे, तो इस कमांड से रिपोर्ट करें:
curl -sS -X POST https://api.html2wp.dev/v1/report \
-H 'content-type: application/json' \
-d '{"subject":"what went wrong","body":"what you saw","evidence":"page keys, warnings"}'हर रिपोर्ट एक इंसान पढ़ता है। फिर सुधार सेवा में जाता है, जिससे हर यूज़र को फ़ायदा होता है।
सुरक्षा बग दूसरे तरीके से रिपोर्ट करें
इस कमांड से नहीं, और GitHub issue के रूप में भी नहीं। तरीका सुरक्षा वाले पेज पर है।