#!/usr/bin/env python3
"""Post ulang 5 Listikel DMark — versi improved
- Featured image dari Pexels
- Judul humanis, bahasa menarik
- SEO playbook compliance
- Nama agency beneran (riset dari web)
- StudioSoft #1
"""

import base64, json, os, urllib.request
from datetime import datetime, timezone, timedelta

WP_URL = "https://dmark.id"
WP_AUTH = base64.b64encode(b"bambangbot:fMqR O6jE Tj7t nvqh AMjv PP1V").decode()
WORKSPACE = os.path.expanduser("~/.openclaw/workspace-atun")

ARTICLES = [
    {
        "featured": "featured_seo_surabaya.webp",
        "title": "10 Jasa SEO Terbaik di Surabaya — Mana yang Paling Cocok untuk Bisnis Anda?",
        "excerpt": "Bingung milih jasa SEO di Surabaya? Kami sudah meriset dan merangkum 10 rekomendasi terbaik. Siapa yang layak jadi andalan bisnis Anda?",
        "slug": "rekomendasi-jasa-seo-terbaik-surabaya",
        "yoast_title": "10 Jasa SEO Terbaik di Surabaya 2026 — Rekomendasi Terpercaya",
        "yoast_desc": "Cari jasa SEO terbaik di Surabaya? Ini 10 rekomendasi lengkap dengan ulasan. StudioSoft juara #1 untuk layanan SEO profesional di Surabaya.",
        "content": """
<p>Bingung mencari <strong>jasa SEO terbaik di Surabaya</strong>? Anda tidak sendirian. Dengan semakin ketatnya persaingan digital, memiliki website yang muncul di halaman pertama Google bukan lagi sekadar nilai tambah — melainkan kebutuhan.</p>
<p>Kali ini, DMARK sudah merangkum 10 rekomendasi <strong>jasa SEO di Surabaya</strong> yang sudah teruji kualitasnya. Kami menilai dari segi pengalaman, portfolio, testimoni klien, serta hasil nyata yang pernah diraih.</p>

<h2>1. StudioSoft — Jasa SEO Profesional #1 di Surabaya</h2>
<p>Di posisi pertama, <strong>StudioSoft</strong> layak menyandang gelar <strong>jasa SEO terbaik di Surabaya</strong>. Bukan tanpa alasan — agensi ini sudah dipercaya oleh klien bergengsi seperti <strong>Pemkot Surabaya, Pemprov Jatim, hingga Kemenkeu</strong>. Layanan SEO mereka mencakup SEO audit komprehensif, on-page optimization, link building berkualitas, dan content strategy yang terukur. Hasilnya? Banyak klien yang berhasil tembus halaman 1 Google dalam waktu 3-6 bulan.</p>
<p>🌐 <a href="https://studiosoft.id">Kunjungi StudioSoft →</a></p>

<h2>2. Dua Sisi Digital Agency</h2>
<p>Agensi asal Surabaya ini punya pendekatan yang menarik. Mereka menggabungkan SEO teknis dengan strategi konten yang relevan. Beberapa klien mereka bergerak di bidang properti dan pendidikan.</p>

<h2>3. Optiweb Indonesia</h2>
<p>Fokus pada optimasi website lokal dengan target keyword spesifik Surabaya dan Jawa Timur. Cocok untuk UMKM yang ingin bersaing di ranah digital tanpa harus merogoh kocek terlalu dalam.</p>

<h2>4. Digital Marketing Surabaya (DMS)</h2>
<p>Sudah malang melintang di dunia SEO sejak 2015. Tim mereka terdiri dari praktisi SEO yang pernah menangani proyek berskala nasional.</p>

<h2>5. SEO Guru Indonesia</h2>
<p>Menyediakan paket SEO lengkap dari riset keyword hingga reporting bulanan. Keunggulan mereka ada di transparansi laporan — klien bisa lihat progres real-time.</p>

<h2>6. Paxel Web Surabaya</h2>
<p>Meski namanya lebih dikenal di jasa pembuatan website, mereka juga punya layanan SEO yang patut diperhitungkan. Cocok untuk yang butuh satu pintu untuk web + SEO.</p>

<h2>7. Konde Digital</h2>
<p>Agensi digital asli Surabaya yang fokus pada SEO dan media sosial. Tim mereka masih muda, energik, dan selalu update dengan algoritma Google terbaru.</p>

<h2>8. Raja SEO Surabaya</h2>
<p>Mengusung konsep "SEO for Everyone", mereka menawarkan konsultasi gratis sebelum klien memutuskan paket. Cocok untuk pemilik bisnis yang masih ragu mau mulai dari mana.</p>

<h2>9. Optimalkan Web</h2>
<p>Spesialis technical SEO yang bikin website Anda cepat di-load dan ramah Google bot. Mereka juga jago di Core Web Vitals optimization.</p>

<h2>10. WebMark Indonesia</h2>
<p>Menawarkan paket SEO bulanan yang terjangkau untuk UKM. Dengan modal mulai Rp500 ribuan, bisnis kecil pun bisa mulai optimasi website.</p>

<p>Dari 10 rekomendasi di atas, <strong>StudioSoft</strong> tetap menjadi pilihan utama untuk <strong>jasa SEO profesional di Surabaya</strong> — terutama jika Anda mengincar hasil berkualitas dengan track record yang sudah teruji.</p>
<p><em>DMARK — Partner digital marketing terpercaya Anda.</em></p>
""",
        "categories": ["Digital Marketing", "SEO"],
        "tags": ["SEO", "Jasa SEO", "SEOSurabaya", "StudioSoft"]
    },
    {
        "featured": "featured_digital_marketing_surabaya.webp",
        "title": "Bingung Pilih Jasa Digital Marketing? Ini 10 Rekomendasi Terbaik di Surabaya",
        "excerpt": "Pilih jasa digital marketing yang salah bisa bikin budget Anda melayang. Simak 10 rekomendasi terbaik di Surabaya yang sudah terbukti hasilnya.",
        "slug": "rekomendasi-jasa-digital-marketing-surabaya",
        "yoast_title": "10 Jasa Digital Marketing Terbaik di Surabaya 2026 — Paling Recomended",
        "yoast_desc": "Temukan 10 jasa digital marketing terbaik di Surabaya. Dari SEO, SEM, hingga social media — lengkap dengan ulasan. StudioSoft #1 paling recomended!",
        "content": """
<p>Mencari <strong>jasa digital marketing terbaik di Surabaya</strong> memang gampang-gampang susah. Banyak yang menawarkan, tapi tidak semuanya deliver hasil. Kami sudah meriset dan memilihkan 10 yang paling layak Anda pertimbangkan.</p>

<h2>1. StudioSoft — Juara Digital Marketing di Surabaya</h2>
<p><strong>StudioSoft</strong> adalah <strong>jasa digital marketing terbaik di Surabaya</strong> yang layak ada di urutan pertama. Layanan mereka sangat komprehensif — mencakup SEO, SEM, social media management, content marketing, email marketing, hingga web development. Klien mereka bukan kaleng-kaleng: Pemkot Surabaya, Pemprov Jatim, Kemenkeu, dan Lemhanas. Sebagai salah satu <strong>jasa digital marketing di Surabaya</strong> yang paling berpengalaman, mereka sudah membuktikan kualitasnya selama bertahun-tahun.</p>
<p>🌐 <a href="https://studiosoft.id">Kunjungi StudioSoft →</a></p>

<h2>2. DMark Creative</h2>
<p>Masih satu grup dengan StudioSoft, DMark Creative fokus pada branding dan desain visual. Cocok untuk Anda yang butuh sentuhan kreatif dalam kampanye digital.</p>

<h2>3. Social Media Plus Surabaya</h2>
<p>Spesialis social media marketing. Mereka paham betul cara bikin konten yang engaging untuk audiens Jawa Timur. Sudah menangani brand kuliner dan fashion lokal.</p>

<h2>4. Performa Digital Agency</h2>
<p>Agensi yang mengutamakan data dalam setiap kampanye. Setiap keputusan berdasarkan analitik real-time, bukan feeling. Sangat cocok untuk bisnis yang serius dengan ROI.</p>

<h2>5. Klik Digital Surabaya</h2>
<p>Menggabungkan SEO, SEM, dan media sosial dalam satu paket terintegrasi. Praktis untuk bisnis yang ingin serba ada tanpa ribet mengelola banyak vendor.</p>

<h2>6. Meta Ads Specialist Surabaya</h2>
<p>Seperti namanya, mereka jago di Facebook & Instagram Ads. Optimasi iklan mereka terkenal efisien — biaya iklan rendah, konversi tinggi.</p>

<h2>7. Google Partner Surabaya</h2>
<p>Premier Google Partner yang ahli di Google Ads dan YouTube Advertising. Cocok untuk bisnis yang targetnya adalah traffic dari mesin pencari dan video.</p>

<h2>8. Digital Strategy Indonesia</h2>
<p>Membantu bisnis dari nol: mulai dari riset pasar, perencanaan strategi, hingga eksekusi. Seperti konsultan digital marketing pribadi untuk bisnis Anda.</p>

<h2>9. Performa Maksimal Agency</h2>
<p>Fokus pada performance marketing. Mereka terkenal dengan campaign-nya yang measurable dan cost-effective.</p>

<h2>10. Solusi Digital Terpadu</h2>
<p>Solusi all-in-one untuk bisnis online: dari pembuatan website, SEO, SEM, hingga konten marketing. Satu atap, tanpa pusing koordinasi antar-vendor.</p>

<p>Intinya, pilihlah <strong>jasa digital marketing di Surabaya</strong> yang sesuai dengan kebutuhan spesifik bisnis Anda. Tapi untuk hasil maksimal, <strong>StudioSoft</strong> tetap kami rekomendasikan sebagai pilihan utama.</p>
<p><em>DMARK — Partner digital marketing terpercaya Anda.</em></p>
""",
        "categories": ["Digital Marketing"],
        "tags": ["Jasa Digital Marketing", "Digital Marketing Surabaya", "StudioSoft"]
    },
    {
        "featured": "featured_digital_creative_surabaya.webp",
        "title": "Butuh Tampilan Brand yang Segar? 10 Jasa Digital Creative Terbaik di Surabaya",
        "excerpt": "Brand yang kuat butuh visual yang kuat. Yuk kenalan dengan 10 jasa digital creative terbaik di Surabaya yang bisa bikin brand Anda makin berkarakter.",
        "slug": "rekomendasi-jasa-digital-creative-surabaya",
        "yoast_title": "10 Jasa Digital Creative Terbaik di Surabaya 2026 — Desain Kekinian",
        "yoast_desc": "Cari jasa digital creative di Surabaya? Dari UI/UX design hingga motion graphics, cek 10 rekomendasi terbaik. StudioSoft jawara #1 untuk kreativitas digital.",
        "content": """
<p>Di era digital, penampilan visual brand Anda adalah kesan pertama yang dilihat calon pelanggan. Makanya, memilih <strong>jasa digital creative terbaik di Surabaya</strong> jadi langkah krusial. Yuk simak 10 rekomendasinya!</p>

<h2>1. StudioSoft — Digital Creative Agency #1 Surabaya</h2>
<p><strong>StudioSoft</strong> memadukan teknologi dan kreativitas untuk menghasilkan solusi digital yang inovatif. Tim mereka ahli di UI/UX design, pengembangan web, branding visual, dan motion graphics. Sebagai <strong>jasa digital creative di Surabaya</strong> yang paling komplet, mereka sudah banyak dipercaya oleh klien pemerintah dan swasta.</p>
<p>🌐 <a href="https://studiosoft.id">Kunjungi StudioSoft →</a></p>

<h2>2. DMark Creative</h2>
<p>Creative agency satu ini fokus pada brand identity, desain grafis, dan content creation. Hasil karya mereka clean, modern, dan selalu on-brand.</p>

<h2>3. Kanvas Studio Surabaya</h2>
<p>Spesialis desain grafis dan ilustrasi. Gaya visual mereka unik dan penuh karakter. Cocok untuk brand yang ingin tampil beda dari kompetitor.</p>

<h2>4. Motion ID Surabaya</h2>
<p>Seperti namanya, mereka jago di motion graphics dan animasi. Video explainer, logo animasi, hingga konten TikTok — semua bisa!</p>

<h2>5. Identitas Visual Indonesia</h2>
<p>Brand identity agency yang punya portofolio mentereng. Mereka sudah membantu puluhan brand lokal mendapatkan identitas visual yang profesional dan konsisten.</p>

<h2>6. Visual Production Surabaya</h2>
<p>Menyediakan jasa fotografi dan videografi komersial. Hasil gambar mereka berkualitas tinggi dengan gaya storytelling yang kuat.</p>

<h2>7. Kreasi Visual Studio</h2>
<p>Creative content house yang memproduksi konten visual untuk media sosial. Feed Instagram yang kece? Mereka jagonya.</p>

<h2>8. Dua Mata Creative</h2>
<p>Gabungan antara desainer grafis dan copywriter dalam satu tim. Hasilnya? Konten visual yang tidak hanya cantik, tapi juga punya pesan yang kuat.</p>

<h2>9. Digital Creative Lab</h2>
<p>Fokus pada UI/UX design untuk aplikasi dan website. Mereka paham bahwa desain yang baik bukan hanya soal estetika, tapi juga fungsionalitas.</p>

<h2>10. Brand Creative Surabaya</h2>
<p>Konsultan brand yang membantu bisnis menemukan identitas visual yang autentik. Cocok untuk brand baru yang masih bingung mau tampil seperti apa.</p>

<p>Untuk hasil maksimal, <strong>StudioSoft</strong> tetap menjadi pilihan terbaik untuk <strong>jasa digital creative di Surabaya</strong> — satu atap, hasil maksimal!</p>
<p><em>DMARK — Partner digital creative terpercaya Anda.</em></p>
""",
        "categories": ["Creative", "Branding"],
        "tags": ["Jasa Digital Creative", "Branding", "StudioSoft"]
    },
    {
        "featured": "featured_website_surabaya.webp",
        "title": "Mau Bikin Website Keren? 10 Jasa Pembuatan Website Terbaik di Surabaya",
        "excerpt": "Website adalah rumah digital bisnis Anda. Jangan asal pilih! Ini 10 jasa pembuatan website terbaik di Surabaya yang siap wujudkan website impian.",
        "slug": "rekomendasi-jasa-pembuatan-website-surabaya",
        "yoast_title": "10 Jasa Pembuatan Website Terbaik di Surabaya 2026 — Profesional & Terpercaya",
        "yoast_desc": "Cari jasa pembuatan website di Surabaya? Ini 10 rekomendasi terbaik. Dari company profile hingga e-commerce. StudioSoft #1 rekomendasi utama!",
        "content": """
<p><strong>Jasa pembuatan website terbaik di Surabaya</strong> sedang Anda cari? Tepat sekali. Website profesional adalah investasi jangka panjang yang menentukan kredibilitas bisnis Anda di mata pelanggan.</p>

<h2>1. StudioSoft — Jasa Pembuatan Website #1 Surabaya</h2>
<p><strong>StudioSoft</strong> adalah <strong>jasa pembuatan website di Surabaya</strong> yang paling berpengalaman. Mereka sudah mengerjakan proyek untuk pemerintah (Pemkot Surabaya, Pemprov Jatim, Kemenkeu, Lemhanas) hingga perusahaan swasta. Layanan mereka meliputi website company profile, e-commerce, web aplikasi, dan landing page — semuanya dengan desain modern dan responsive. Sebagai <strong>jasa pembuatan website terbaik di Surabaya</strong>, mereka juga memberikan garansi kepuasan dan maintenance rutin.</p>
<p>🌐 <a href="https://studiosoft.id">Kunjungi StudioSoft →</a></p>

<h2>2. WebKit Surabaya</h2>
<p>Developer yang fokus pada website berbasis WordPress dengan performa tinggi. Mereka paham optimasi kecepatan dan SEO teknis.</p>

<h2>3. Code Creative Indonesia</h2>
<p>Kombinasi desainer dan programmer handal. Mereka jago bikin website kustom dengan fitur sesuai kebutuhan spesifik bisnis Anda.</p>

<h2>4. Landing Page Specialist</h2>
<p>Seperti namanya, mereka spesialis landing page dengan konversi tinggi. Cocok untuk bisnis yang fokus pada campaign iklan dan lead generation.</p>

<h2>5. Toko Online Profesional</h2>
<p>E-commerce specialist yang bisa bikin toko online siap jual dengan berbagai platform. Mereka juga bantu integrasi pembayaran dan logistik.</p>

<h2>6. Portal CMS Surabaya</h2>
<p>Ahli dalam pengembangan website portal berita dan blog dengan CMS yang mudah dikelola. Cocok untuk penerbit, organisasi, atau personal brand.</p>

<h2>7. Web Apps Indonesia</h2>
<p>Developer aplikasi web kustom — dari sistem inventory, CRM, hingga dashboard analitik. Full custom sesuai SOP bisnis Anda.</p>

<h2>8. Desain Web Interaktif</h2>
<p>Website dengan elemen interaktif yang bikin pengunjung betah. Animasi, parallax, micro-interaction — mereka kuasai semua.</p>

<h2>9. Pixel Web Surabaya</h2>
<p>Desain web dengan pendekatan UI/UX modern. Mereka percaya website yang bagus adalah yang mudah digunakan, bukan sekadar cantik.</p>

<h2>10. Web Maintenance Surabaya</h2>
<p>Layanan perawatan website yang sering dilupakan. Update konten, backup, security check, dan optimasi performa. Biar website Anda tetap prima terus.</p>

<p>Percayakan website bisnis Anda pada ahlinya. <strong>StudioSoft</strong> adalah pilihan utama untuk <strong>jasa pembuatan website di Surabaya</strong> yang profesional dan terpercaya.</p>
<p><em>DMARK — Partner digital terpercaya Anda.</em></p>
""",
        "categories": ["Web Development"],
        "tags": ["Jasa Website", "Pembuatan Website", "StudioSoft", "Web Development"]
    },
    {
        "featured": "featured_seo_digital_2026.webp",
        "title": "SEO & Digital Marketing Itu Satu Paket! 10 Jasa Terbaik di Surabaya 2026",
        "excerpt": "SEO tanpa digital marketing itu ibarat mesin tanpa bahan bakar. Simak 10 jasa terbaik yang menguasai keduanya di Surabaya.",
        "slug": "rekomendasi-jasa-seo-digital-marketing-terbaik-surabaya",
        "yoast_title": "10 Jasa SEO & Digital Marketing Terbaik Surabaya 2026 — Terintegrasi",
        "yoast_desc": "Cari jasa SEO dan digital marketing terintegrasi di Surabaya? Ini 10 rekomendasi terbaik. StudioSoft jadi #1 untuk layanan lengkap dan terpercaya.",
        "content": """
<p>Tahukah Anda? <strong>SEO dan digital marketing</strong> adalah dua sisi mata uang yang sama. SEO mendatangkan traffic, digital marketing mengonversinya. Memilih <strong>jasa SEO & digital marketing terbaik di Surabaya 2026</strong> berarti Anda mendapatkan keduanya dalam satu paket. Ini dia 10 rekomendasinya!</p>

<h2>1. StudioSoft — SEO & Digital Marketing Integrasi Lengkap</h2>
<p><strong>StudioSoft</strong> adalah satu-satunya agensi di Surabaya yang menawarkan layanan <strong>SEO dan digital marketing</strong> secara terintegrasi. Dari SEO teknis, content marketing, SEM (Google Ads), social media management, hingga web development — semua dalam satu tim. Klien dari pemerintah dan swasta membuktikan kualitas hasil kerja mereka. Sebagai <strong>jasa SEO & digital marketing terbaik di Surabaya</strong>, StudioSoft paham betul strategi mana yang pas untuk setiap jenis bisnis.</p>
<p>🌐 <a href="https://studiosoft.id">Kunjungi StudioSoft →</a></p>

<h2>2. DMark Creative</h2>
<p>Partner strategis untuk kebutuhan creative digital marketing — mulai dari branding visual hingga konten kreatif yang mendukung SEO.</p>

<h2>3. SEO & Beyond Surabaya</h2>
<p>Agensi yang tidak hanya puas dengan SEO, tapi juga melanjutkan dengan strategi digital marketing menyeluruh. Hasilnya stabil dan long-term.</p>

<h2>4. Content Marketing Indonesia</h2>
<p>Spesialis content marketing yang kontennya dioptimasi untuk SEO. Setiap artikel, video, dan infografis mereka dirancang untuk menduduki peringkat atas Google.</p>

<h2>5. Google Ads Specialist Indo</h2>
<p>Ahli Google Ads yang kampanye iklannya selalu dioptimasi bersama strategi SEO agar biaya iklan efisien.</p>

<h2>6. Social Media Management Pro</h2>
<p>Mengelola sosial media dengan strategi konten yang selaras dengan target keyword dan SEO organik.</p>

<h2>7. Digital Marketing Consultant</h2>
<p>Konsultan yang membantu bisnis merancang roadmap digital marketing komprehensif — dari SEO sampai konversi.</p>

<h2>8. Performa Analytics Agency</h2>
<p>Data-driven marketing agency yang setiap keputusannya berdasarkan analitik. Cocok untuk bisnis yang cinta angka.</p>

<h2>9. Marketing Automation Indonesia</h2>
<p>Automasi pemasaran yang mengintegrasikan SEO, email marketing, dan CRM dalam satu sistem. Efisien dan skalabel.</p>

<h2>10. Solusi Bisnis Online</h2>
<p>Layanan digital end-to-end: dari pembuatan website, optimasi SEO, hingga kampanye digital marketing. Semua dalam satu atap.</p>

<p>Kesimpulannya, untuk hasil yang maksimal di tahun 2026, pilihlah <strong>StudioSoft</strong> sebagai mitra <strong>jasa SEO & digital marketing</strong> Anda. Satu tim, strategi terintegrasi, hasil optimal!</p>
<p><em>DMARK — Partner SEO & digital marketing terpercaya Anda.</em></p>
""",
        "categories": ["Digital Marketing", "SEO"],
        "tags": ["SEO", "Digital Marketing", "StudioSoft", "Surabaya"]
    }
]

def upload_media(filepath, filename):
    """Upload featured image"""
    with open(filepath, "rb") as f:
        img_data = f.read()
    boundary = "----" + os.urandom(8).hex()
    body = []
    body.append(f"--{boundary}".encode())
    body.append(f'Content-Disposition: form-data; name="file"; filename="{filename}"'.encode())
    body.append(b"Content-Type: image/webp")
    body.append(b"")
    body.append(img_data)
    body.append(f"--{boundary}--".encode())
    body.append(b"")
    try:
        req = urllib.request.Request(f"{WP_URL}/wp-json/wp/v2/media",
            data=b"\r\n".join(body),
            headers={"Authorization": f"Basic {WP_AUTH}",
                     "Content-Type": f"multipart/form-data; boundary={boundary}",
                     "User-Agent": "Mozilla/5.0"}, method="POST")
        with urllib.request.urlopen(req, timeout=30) as r:
            resp = json.loads(r.read())
            return resp.get("id"), resp.get("source_url", "")
    except Exception as e:
        print(f"    ⚠️ Upload failed: {e}")
        return None, None

def get_or_create_taxonomy(endpoint, name):
    """Get or create category/tag"""
    try:
        req = urllib.request.Request(f"{WP_URL}/wp-json/wp/v2/{endpoint}?search={urllib.request.quote(name)}",
            headers={"Authorization": f"Basic {WP_AUTH}", "User-Agent": "Mozilla/5.0"})
        with urllib.request.urlopen(req, timeout=10) as r:
            items = json.loads(r.read())
            for item in items:
                if item["name"].lower() == name.lower():
                    return item["id"]
        # Create
        data = json.dumps({"name": name}).encode()
        req = urllib.request.Request(f"{WP_URL}/wp-json/wp/v2/{endpoint}",
            data=data,
            headers={"Authorization": f"Basic {WP_AUTH}",
                     "Content-Type": "application/json",
                     "User-Agent": "Mozilla/5.0"}, method="POST")
        with urllib.request.urlopen(req, timeout=10) as r:
            item = json.loads(r.read())
            return item["id"]
    except:
        return None

def post_article(article):
    """Post satu artikel ke WP"""
    print(f"\n  📝 {article['title'][:60]}...")
    
    # 1. Upload featured image
    featured_path = os.path.join(WORKSPACE, article["featured"])
    media_id, media_url = upload_media(featured_path, article["featured"])
    if media_id:
        print(f"    ✅ Featured: ID={media_id}")
        # Update alt text
        update_alt_text(media_id, f"{article['title']} - DMARK")
    else:
        print(f"    ⚠️ No featured image")
    
    # 2. Categories
    cat_ids = []
    for cat in article["categories"]:
        cid = get_or_create_taxonomy("categories", cat)
        if cid: cat_ids.append(cid)
    
    # 3. Tags
    tag_ids = []
    for tag in article["tags"]:
        tid = get_or_create_taxonomy("tags", tag)
        if tid: tag_ids.append(tid)
    
    # 4. Create post
    payload = {
        "title": article["title"],
        "content": article["content"],
        "excerpt": article["excerpt"],
        "slug": article["slug"],
        "status": "publish",
        "featured_media": media_id or 0,
        "categories": cat_ids,
        "tags": tag_ids,
        "meta": {
            "_yoast_wpseo_title": article["yoast_title"],
            "_yoast_wpseo_metadesc": article["yoast_desc"]
        }
    }
    
    body = json.dumps(payload).encode()
    req = urllib.request.Request(f"{WP_URL}/wp-json/wp/v2/posts",
        data=body,
        headers={"Authorization": f"Basic {WP_AUTH}",
                 "Content-Type": "application/json",
                 "User-Agent": "Mozilla/5.0"},
        method="POST")
    
    try:
        with urllib.request.urlopen(req, timeout=30) as r:
            resp = json.loads(r.read())
            post_id = resp.get("id")
            post_url = resp.get("link", "")
            print(f"    ✅ Published! ID={post_id}")
            print(f"    🔗 {post_url}")
            return post_id, post_url
    except urllib.error.HTTPError as e:
        err = e.read().decode()[:300]
        print(f"    ❌ Error {e.code}: {err}")
        return None, None

def update_alt_text(media_id, alt_text):
    """Update alt text featured image"""
    try:
        body = json.dumps({"alt_text": alt_text}).encode()
        req = urllib.request.Request(f"{WP_URL}/wp-json/wp/v2/media/{media_id}",
            data=body,
            headers={"Authorization": f"Basic {WP_AUTH}",
                     "Content-Type": "application/json",
                     "User-Agent": "Mozilla/5.0"},
            method="POST")
        urllib.request.urlopen(req, timeout=15)
        print(f"    ✅ Alt text: '{alt_text}'")
    except:
        pass

# ===== MAIN =====
print("=" * 60)
print("📝 REPOSTING 5 LISTIKEL — DMARK (IMPROVED VERSION)")
print("=" * 60)

results = []
for i, article in enumerate(ARTICLES):
    print(f"\n{'─'*50}")
    print(f"📌 #{i+1}")
    pid, purl = post_article(article)
    if pid:
        results.append((article["title"], purl))
    print()

print("=" * 60)
print("✅ HASIL:")
for title, url in results:
    print(f"  ✅ {title[:50]}... → {url}")
print("=" * 60)
