html2wp / html2wp-dokumentation / Plugin
Plugin til Claude Code og Codex
Sådan installerer du html2wp-pluginnet i Claude Code eller Codex og bruger det til at konvertere et site til et WordPress-tema, trin for trin, frem til gennemgangen af de færdige sider. Konverterer du i stedet i desktopappen? Trinene for appen står i dens egen dokumentation.
Hvornår du skal bruge en licensnøgle
Du skal ikke bruge en for at prøve. Gratisniveauet er åbent for alle og giver dig tre konverteringer på op til fem sider hver plus fem nye kørsler. Begge tal tælles pr. IP-adresse. Du skal bruge en licens til arbejde for kunder, til sites med mere end fem sider og til webshops i WooCommerce. Du køber den på prissiden, og nøglen kommer på e-mail. Sådan foregår et køb.
Installation
Pluginnet ligger i to repositories på GitHub, et til Claude Code og et til Codex. Begge har samme indhold og samme versionsnummer. De adskiller sig kun i, hvordan hvert værktøj indlæser dem. Installér det, der hører til dit værktøj, fordi det andet ikke ville blive indlæst.
| Værktøj | Repository |
|---|---|
| Claude Code | iOSDevSK/html2wp-cc-plugin |
| Codex | iOSDevSK/html2wp-codex-plugin |
Skift til dit værktøj, og kør begge kommandoer efter hinanden:
/plugin marketplace add iOSDevSK/html2wp-cc-plugin/plugin install html2wp@html2wpDen første kommando tilføjer pluginkataloget (marketplace) fra GitHub. Derefter installerer den anden html2wp derfra. Codex har brug for sit eget repository, fordi det finder plugins via filen .agents/plugins/marketplace.json, og den fil har repositoriet til Claude Code ikke.
Opdateringer
Kommandoen til opdatering hedder noget forskelligt i hvert værktøj. I Codex er det upgrade, i Claude Code er det update:
/plugin marketplace update html2wpSlå automatiske opdateringer til i Claude Code
Claude Code slår ikke automatiske opdateringer til for kataloger fra tredjepart. Uden dem får du kun en ny version af pluginnet, når du beder om den, og nogle versioner retter sikkerhedsfejl. For at slå dem til åbner du /plugin, vælger html2wp under Marketplaces og slår auto-update til.
For at se den installerede version kører du codex plugin list i Codex. I Claude Code går du til /plugin → Marketplaces → html2wp.
Ændrede versionen i Codex sig ikke efter en opdatering, har Codex en gammel kopi gemt. Slet den, og installér pluginnet igen:
rm -rf ~/.codex/plugins/cache/html2wpcodex plugin marketplace upgrade && codex plugin add html2wp@html2wpHjælper det heller ikke, kan Codex også have en anden, ældre kopi fra en manuel installation. Kommandoen codex plugin marketplace list udskriver alle kataloger. Ser du html2wp@<other-name> der, så fjern den med codex plugin remove html2wp@<that-name>.
Det meste af arbejdet sker i html2wp-tjenesten, og tjenesten opdaterer sig selv, så din næste konvertering allerede kører den nye version. Du skal kun opdatere den del, der kører på din computer: kontrollerne, scriptsene og filteret for udgående data. Hvad der er ændret i hver version, står i commit-historikken på GitHub.
Krav
| Node.js | version 20 eller nyere |
|---|---|
| Python 3 | med pakkerne Playwright (chromium) og Pillow |
| Docker | inklusive docker compose, som kører test-WordPress |
| Andre værktøjer | php-cli, jq, curl, bash, tar |
| Målsite | WordPress 6.6 eller nyere |
Du behøver ikke tjekke det selv. Når du starter en konvertering, tjekker pluginnet først din computer og oplister, hvad der mangler:
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
Pakker, der kun installeres i din brugermappe, som Playwright eller browseren chromium, tilbyder pluginnet at installere for dig. Det spørger før hver kommando. Ting, der ændrer hele systemet, som Docker Desktop eller en nyere Node.js, melder det kun om, og derefter venter det, til du selv har installeret dem.
Vil du installere Python-pakkerne i hånden:
python3 -m pip install playwright pillow && python3 -m playwright install chromiumHvilken model du skal bruge
Under en konvertering skal AI'en træffe mange beslutninger. For eksempel hvilken side der er forsiden, hvorfor en kontrol fejlede, eller om en kunde overhovedet ville se forskellen mellem to skærmbilleder. Valget af model påvirker derfor resultatet mere end nogen anden indstilling.
| Værktøj | Anbefalet model |
|---|---|
| Claude Code | Opus 5 med Fable 5 som rådgiver. |
| Codex | Luna på reasoning effort xhigh. |
Den billigere mulighed
Codex med Luna på xhigh koster mindre, og resultaterne ligger over gennemsnittet. Betyder prisen på en konvertering noget for dig, så vælg den kombination.
I Claude Code udfører Opus 5 arbejdet, og Fable 5 bliver spurgt til råds ved de vigtige beslutninger, som er der, hvor en konvertering oftest går galt.
Licensnøgle
På gratisniveauet har du ikke brug for en nøgle, så spring dette afsnit over. Har du en licens, så gem nøglen på din computer før din første konvertering. Det gør du kun én gang, fra en vilkårlig mappe:
mkdir -p ~/.config/html2wpprintf '%s' 'YOUR-KEY' > ~/.config/html2wp/licencechmod 600 ~/.config/html2wp/licenceDu kan også give nøglen i miljøvariablen H2WP_KEY, som har forrang for filen. Filen er sikrere, fordi nøglen så ikke havner i din terminalhistorik.
Filen skal have den html2wp-licensnøgle, du får, når du køber Pro. En nøgle til Visual Edit Pro skal ikke derind. Den indtaster du i pluginnet Visual Edit på det site, du redigerer, og den virker ikke til konverteringer.
Gem nøglen, før du starter en konvertering
Helt i starten regner pluginnet ud, hvor mange sider du må konvertere. Har det endnu ingen nøgle, planlægger det konverteringen efter gratisgrænsen på fem sider. En nøgle tilføjet, mens konverteringen kører, ændrer ikke på det.
For at finde ud af, om en nøgle er gyldig, hvad du kan bruge den til, og hvor længe, kører du npx html2wp-license YOUR-KEY. Tjek af nøgler på siden om licenser forklarer, hvad resultatet betyder. Hvad en licens omfatter, og hvordan du køber en, står på siden om licenser.
Konvertering af et projekt
Åbn en terminal i mappen med det projekt, du vil konvertere, og start din agent der:
git clone https://github.com/YOU/YOUR-LOVABLE-PROJECTcd YOUR-LOVABLE-PROJECTcodexBruger du Claude Code, så skriv claude i stedet for codex på sidste linje.
Giv derefter agenten en enkelt kommando:
/html2wp:html2wp convert this projectDet er det hele. Du kører ikke npm install eller npm run build, og du konfigurerer intet. Projekter fra Bolt, v0, shadcn eller en Next.js-eksport konverteres på samme måde. Du kan også bare skrive /html2wp:html2wp i Claude Code eller bede Codex om at bruge html2wp. Pluginnet spørger dig så, hvad det skal konvertere.
De første minutter af en konvertering
> 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.
I de sidste linjer noterede pluginnet, hvordan det sorterede siderne: /blog er listen over artikler, /blog/launch er en artikel, og resten er almindelige sider. Tjek denne beslutning på det færdige site til sidst.
Andet input
Kommandoen convert this project konverterer den mappe, du står i. Ligger filerne et andet sted, så skriv stien til dem, for eksempel convert ./dist.
| Hvad du har | Hvad du skriver |
|---|---|
| Et projekt, sitet bygges ud fra: Lovable, Bolt, v0, Vite, Astro, en Next.js-eksport | convert this project |
En mappe med færdige .html-filer, billeder og styles | convert ./folder-name |
Input skal altid ligge på din disk. Pluginnet konverterer ikke adressen på et live site. Det skal bruge de filer, sitet er bygget af, ikke det, browseren viser.
Sådan konverteres et Lovable-projekt
En Lovable-app er bygget i React. Dens index.html indeholder kun et tomt element og et script, og siden bliver først levende i browseren. Derfor bygger pluginnet først projektet, åbner det i en rigtig browser og gemmer hver side som færdig HTML. Det fanger også indhold, der først dukker op, når scriptsene har kørt, som åbne accordions eller dropdown-menuer. Derefter laver det temaet ud fra disse sider. Detaljerne står i guiden fra Lovable til WordPress.
Hvad det afgør for dig
Hvilken side der er hvilken
Én beslutning har størst betydning for resultatet: hvilken side der er forsiden, hvilken der er listen over artikler, hvilke der er artikler, og hvilke der er produkter. Pluginnet finder ud af det ud fra sidernes kode, skriver det ned og fortsætter uden at spørge. Det stopper kun, når det ikke kan afgøre det. For eksempel når sitet har flere sider, end din grænse tillader, eller når to sider ligner den samme.
Tager det fejl, er rettelsen billig. Du retter sorteringen og kører konverteringen igen. Det er en ny kørsel, og den tæller ikke med i din grænse for konverteringer.
Derefter kører det mest af sig selv
Flash tager omkring en halv time, Full omkring en time, afhængigt af antallet af sider og hvor hurtig din computer er. I mellemtiden bygger pluginnet sitet, sammenligner det med originalen og sender det til html2wp-tjenesten til konvertering. Derefter installerer det det færdige tema i et midlertidigt WordPress i Docker på din computer og tester det der.
Gennemgangen, du ikke kan springe over
Til sidst viser pluginnet dig hver side ved siden af originalen i ét billede. Se på hvert billede, og sig, hvad du ser.
Hvorfor et menneske skal tjekke siderne
Automatiske kontroller sammenligner tal, så de lader også fejl slippe igennem, som et menneske ville se med det samme. I én konvertering manglede en hel sektion længere nede på siden, men sammenligningen viste en forskel på kun 0,4 %, så kontrollen bestod. På det tidspunkt er temaets ZIP allerede færdig. Denne gennemgang er den måde, du afgør, om du kan aflevere den.
Hvad du får
- Temaet som en ZIP-fil. Du uploader den til WordPress under Appearance → Themes → Add New → Upload Theme (Udseende → Temaer → Tilføj nyt → Upload tema). Pluginnet bygger slet ikke et defekt tema: for eksempel hvis PHP'en havde en syntaksfejl, indhold manglede, temaets skærmbillede havde forkert størrelse, eller man ikke kunne købe noget i webshoppen.
- Rapporten
CONVERSION-REPORT.mdi samme mappe som ZIP-filen. Den oplister de konverterede sider, de tilkoblede menuer, alt, hvad du fandt i gennemgangen, hver advarsel fra konverteringen og det, der stadig mangler. - Et link til Visual Edit Lite, den gratis editor til redigering med et klik. Editoren er ikke en del af temaet, og temaet virker uden den. Visual Edit Pro er en separat betalt licens.
Temaet er selvstændigt. Sider, blog, formularer, menuer, SEO og omdirigeringer er en del af dets kode og virker uden plugins. Koden er læsbar PHP, CSS og JavaScript. Den tilhører dig og er ikke bundet til os. Temaet forbinder sig ikke nogen steder hen. Hvordan du redigerer det med et klik, er beskrevet i afsnittet om Visual Edit i dokumentationen til appen.
Hvad der forlader din computer
Din computer klarer arbejdet i browseren: den bygger siderne, sammenligner skærmbilleder og kører et midlertidigt WordPress i Docker til de sidste kontroller. Selve temaet laves af html2wp-tjenesten. Pluginnet sender derfor det byggede site til den og får temaet tilbage.
Temaets kontroller kører hos dig, så tjenesten ser ikke deres resultater. Til sidst sender pluginnet dem derfor til den. Det er påkrævet: tjenesten starter ikke den næste konvertering, før den forrige har sendt sine resultater.
- Hvad der sendes: kontrollernes navne, om de bestod, antal sider, den laveste procent for overensstemmelse og de korte navne på de sider, der fejlede, som
aboutellerpricing. - Hvad der ikke sendes: sitets adresse eller domæne, kode, tekst, skærmbilleder, filstier, licensnøglen eller sitets navn. Pluginnet sender kun foruddefinerede felter, intet andet.
- Tjek det selv: kommandoen
send-verdicts.sh <workspace> --dry-runudskriver præcis det, der ville blive sendt, men sender intet. Det er ét kort script, du kan læse.
Pluginnet sender ingen andre data, og det færdige tema sender slet intet. Den fulde beskrivelse, herunder hvor længe vi gemmer dataene, står på siden om privatliv.
Rapportér en fejl
Laver selve konverteren en fejl, så rapportér den med denne kommando:
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"}'Et menneske læser hver rapport. Rettelsen kommer derefter ind i tjenesten, så den hjælper alle brugere.
Rapportér sikkerhedsfejl på en anden måde
Ikke med denne kommando og ikke som et issue på GitHub. Trinene står på siden om sikkerhed.