=== Seoklaar ===
Contributors: studiofanoos
Tags: seo, meta-omschrijving, seo-titel, woocommerce, yoast
Requires at least: 6.2
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 0.2.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Koppel je WordPress-site of WooCommerce-winkel aan Seoklaar en zie welke pagina's, berichten en producten een betere SEO-titel, meta-omschrijving of omschrijving kunnen gebruiken.

== Description ==

Seoklaar helpt websites en webshops beter gevonden te worden in Google. In het Seoklaar-dashboard schrijft de AI SEO-titels en meta-omschrijvingen voor je pagina's en berichten, en betere productomschrijvingen voor je winkel. Jij kijkt alles na en zet het met één klik in WordPress. Deze plugin maakt het koppelen makkelijker en laat in WordPress zien waar je site staat.

Werkt op elke WordPress-site. WooCommerce is niet nodig; is het wel actief, dan doet de plugin ook je producten.

* **Koppelen.** Onder Seoklaar (of WooCommerce, Seoklaar) staat een knop die de koppelpagina van je Seoklaar-dashboard opent, met het adres van je site al ingevuld. Een gewone WordPress-site koppel je met een applicatiewachtwoord dat je zelf in WordPress goedkeurt. De plugin controleert vooraf of dat kan: https, permalinks die niet op Eenvoudig staan, of applicatiewachtwoorden aan staan, en welke SEO-plugin je gebruikt.
* **SEO-overzicht.** Kies bovenaan Pagina's, Berichten of (met WooCommerce) Producten. Je ziet welke gepubliceerde items geen eigen SEO-titel of meta-omschrijving hebben, en bij producten ook welke geen of een te korte omschrijving hebben (minder dan 150 tekens). Met tellers bovenaan, twintig items per pagina en per item een knop Verbeter met AI die het in je Seoklaar-dashboard opent.
* **Met Yoast SEO of Rank Math.** De SEO-titel en meta-omschrijving komen uit Yoast SEO of Rank Math, en Seoklaar zet nieuwe teksten daar ook in.
* **Zonder SEO-plugin.** Dan doet Seoklaar het zelf: elke pagina, elk bericht en elk product krijgt een SEO-titel en meta-omschrijving (in de editor onder Seoklaar: zoekmachineteksten), en de plugin zet ze in de head van die pagina als `<title>` en `<meta name="description">`. Bij een leeg veld blijft alles zoals WordPress het doet.
* **Met een andere SEO-plugin** (All in One SEO, SEOPress, The SEO Framework, Slim SEO of Squirrly SEO) leest en schrijft Seoklaar de SEO-titel en meta-omschrijving niet en zet de plugin niets in de head. Productomschrijvingen kun je dan nog wel verbeteren.

Koppelen kan ook zonder deze plugin voor WooCommerce-producten. Voor pagina's en berichten is de plugin nodig: die levert de REST-routes waarmee Seoklaar de SEO-titel en meta-omschrijving leest en bijwerkt.

= Externe dienst: www.seoklaar.nl =

Seoklaar is een dienst van Studio Fanoos op https://www.seoklaar.nl. De plugin zelf maakt geen verbinding met Seoklaar en stuurt geen gegevens.

* De knoppen in de plugin zijn gewone links. Pas als je erop klikt, open je Seoklaar in een nieuw tabblad. Bij Koppel deze site aan Seoklaar staat het adres van je site in de link, zodat het dashboard het kan invullen. Bij Verbeter met AI staat het nummer van het product, de pagina of het bericht in de link.
* Koppel je een WordPress-site, dan keur je dat zelf goed in WordPress. WordPress maakt daarvoor een applicatiewachtwoord voor Seoklaar, dat je bij Gebruikers, Profiel, Applicatiewachtwoorden weer intrekt. Daarmee roept Seoklaar de REST-routes van deze plugin aan (`/wp-json/seoklaar/v1`): het leest je gepubliceerde pagina's en berichten die jouw gebruiker mag bewerken, en past de SEO-titel en meta-omschrijving alleen aan als jij daar in het dashboard op klikt. Aan de inhoud zelf komt Seoklaar niet.
* Koppel je een WooCommerce-winkel, dan maakt WooCommerce API-sleutels aan, die je bij WooCommerce, Instellingen, Geavanceerd, REST API weer kunt intrekken. Seoklaar leest daarmee je producten en past alleen teksten aan als jij daar in het dashboard op klikt.
* Er gaan geen gegevens van bezoekers of klanten mee, en de plugin houdt niets bij.

Voorwaarden: https://www.seoklaar.nl/voorwaarden
Privacy: https://www.seoklaar.nl/privacy

== Installation ==

1. Upload de map `seoklaar` naar `/wp-content/plugins/`, of upload `seoklaar.zip` via Plugins, Nieuwe plugin, Plugin uploaden.
2. Activeer de plugin.
3. Ga naar Seoklaar in het menu (met WooCommerce: WooCommerce, Seoklaar).
4. Maak een gratis account op https://www.seoklaar.nl/inloggen. Je logt in met een link die je per mail krijgt.
5. Klik op Koppel deze site aan Seoklaar (of Koppel deze winkel aan Seoklaar) en keur de koppeling goed in WordPress.

== Frequently Asked Questions ==

= Heb ik WooCommerce nodig? =

Nee. Zonder WooCommerce doet Seoklaar de SEO-titels en meta-omschrijvingen van je pagina's en berichten. Met WooCommerce komen je producten erbij.

= Heb ik de plugin nodig om te koppelen? =

Voor pagina's en berichten wel: de plugin levert de REST-routes waarmee Seoklaar de SEO-titel en meta-omschrijving leest en bijwerkt. Een WooCommerce-winkel kun je ook zonder de plugin koppelen, vanuit het Seoklaar-dashboard bij Koppelingen. De plugin vult het adres dan voor je in en controleert vooraf of koppelen kan.

= Wat is een applicatiewachtwoord? =

Een apart wachtwoord dat WordPress voor één app maakt, hier Seoklaar. Je eigen wachtwoord deel je dus niet. Je ziet het bij Gebruikers, Profiel, onder Applicatiewachtwoorden, en daar trek je het ook weer in. Seoklaar kan daarmee alleen wat jouw gebruiker mag: gebruik een beheerder of redacteur.

= Koppelen lukt niet: applicatiewachtwoorden staan uit =

Applicatiewachtwoorden zijn er sinds WordPress 5.6, maar alleen via https (behalve op een lokale ontwikkelomgeving). Sommige beveiligingsplugins, zoals Wordfence, en sommige hostingpartijen zetten ze uit. Het tabblad Koppelen laat zien of ze aan staan.

= Waarom moet mijn site https hebben? =

WordPress biedt applicatiewachtwoorden alleen via een beveiligde verbinding aan, en WooCommerce geeft de API-sleutels alleen zo door. Zonder https lukt koppelen niet.

= Ik heb geen SEO-plugin. Wat doet Seoklaar dan in mijn site? =

Seoklaar bewaart de SEO-titel en meta-omschrijving in eigen velden bij de pagina, het bericht of het product, en zet ze in de head: de SEO-titel als `<title>` en de meta-omschrijving als `<meta name="description">`. Is een veld leeg, dan doet WordPress het zoals altijd. Installeer je later Yoast SEO, Rank Math of een andere SEO-plugin, dan stopt Seoklaar daarmee en neemt die plugin het over.

= Ik gebruik All in One SEO, SEOPress of een andere SEO-plugin =

Dan leest en schrijft Seoklaar de SEO-titel en meta-omschrijving niet: die beheer je in je eigen SEO-plugin. Het SEO-overzicht toont bij producten dan alleen de omschrijvingen. Met Yoast SEO, Rank Math of zonder SEO-plugin kan Seoklaar de SEO-titel en meta-omschrijving wel bijwerken.

= Schrijft de plugin zelf teksten met AI? =

Nee. Het SEO-overzicht laat zien wat beter kan en linkt naar je Seoklaar-dashboard. Daar schrijf je de tekst met AI en zet je hem, met een gekoppelde site, met één klik in WordPress.

= Waarom komen de aantallen niet overeen met het dashboard? =

De plugin gebruikt dezelfde regels als het dashboard. Het overzicht wordt een uur bewaard en opnieuw berekend zodra je een item of een SEO-veld aanpast. Toont het dashboard maar een deel van je pagina's of producten, dan kunnen de aantallen verschillen: de plugin telt alle gepubliceerde items.

= Werkt de plugin met HPOS? =

Ja. De plugin komt niet aan bestellingen en is compatibel met High-Performance Order Storage en de checkout-blokken.

= Wat ruimt de plugin op bij verwijderen? =

De instellingen en de bewaarde SEO-overzichten. De SEO-titels en meta-omschrijvingen in de eigen velden (`_seoklaar_titel` en `_seoklaar_meta`) blijven staan: dat zijn jouw teksten, en zo ben je ze niet kwijt als je de plugin later opnieuw installeert. Wil je ze ook weg, verwijder die metavelden dan zelf, bijvoorbeeld met WP-CLI: `wp eval "delete_post_meta_by_key( '_seoklaar_titel' ); delete_post_meta_by_key( '_seoklaar_meta' );"`. Aan je pagina's, berichten en producten zelf komt de plugin niet.

== Changelog ==

= 0.2.0 =
* Werkt nu ook op een gewone WordPress-site zonder WooCommerce: pagina's en berichten.
* REST-routes `seoklaar/v1` (`/status`, `/items`, `/items/{id}`) waarmee de Seoklaar-webapp met een applicatiewachtwoord SEO-titels en meta-omschrijvingen leest en bijwerkt, in Yoast SEO, Rank Math of de eigen velden.
* Zonder SEO-plugin: eigen velden voor de SEO-titel en meta-omschrijving, met een metabox Seoklaar: zoekmachineteksten in de editor, en de plugin zet ze in de head. Met een andere SEO-plugin (All in One SEO, SEOPress, The SEO Framework, Slim SEO, Squirrly SEO) blijft Seoklaar daarvan af.
* Tabblad Koppelen zonder WooCommerce: uitleg over het applicatiewachtwoord en controles op https, permalinks, applicatiewachtwoorden en de SEO-plugin. Met WooCommerce blijft de koppeling zoals hij was. De koppellink geeft het platform mee.
* SEO-overzicht met een keuze tussen producten, pagina's en berichten. Bij producten zonder SEO-plugin tellen nu de eigen velden, niet meer de korte omschrijving als meta-omschrijving.
* Geen waarschuwing meer dat WooCommerce nodig is.

= 0.1.0 =
* Eerste versie: tabblad Koppelen met de knop naar het Seoklaar-dashboard en een controle op https, permalinks en Yoast SEO of Rank Math, en het SEO-overzicht met tellers, twintig producten per pagina en per product Verbeter met AI.
