Description
SEOYEN SEO Platform is the official WordPress companion plugin for the SEOYEN SEO platform (https://seoyen.com/). It lets you apply decisions made in the SEOYEN panel to your WordPress site with a single click — publish AI-generated articles, add internal links from SEOYEN suggestions, fix audit issues, manage 301/302/307/308/410 redirects, write meta descriptions that work with every major SEO plugin, and much more.
Use the plugin alongside an active SEOYEN account to turn panel recommendations into live site changes without copying and pasting, editing templates, or juggling multiple SEO tools.
Highlights
- Publish AI-generated content (articles and paragraphs) from the SEOYEN panel straight to WordPress as drafts, scheduled posts, or published articles.
- Apply internal link suggestions with a single click, powered by a safe DOMDocument-based link inserter.
- Manage 301/302/307/308/410 redirects with per-hit analytics, support for exact, prefix, and regex matching, CSV bulk import, and automatic capture of broken backlinks.
- Auto-fix common SEO audit issues on 45 supported check types (title, meta description, canonical, robots.txt, schema Article/Breadcrumb/Organization/WebSite/Product/FAQPage, Open Graph + Twitter Card genişlemesi, hreflang, alt text, viewport, apple-touch-icon, theme-color, llms.txt, AI bot yönetimi, kırık link 301, yönlendirme zinciri ve daha fazlası).
- Apply AI-generated meta descriptions across Yoast SEO, Rank Math, SEOPress, or the built-in native fallback — the plugin detects your active SEO plugin automatically.
- Set image alt text in bulk, including featured images and media library entries.
- Manage JSON-LD schema markup per post (append, replace, upsert) and output it in a single clean
<script type="application/ld+json">block. - Convert content into social media drafts ready for your editorial workflow.
- Serve a custom
robots.txtandllms.txtthrough virtual routes — no file permission changes required. - Outbound webhook dispatcher with HMAC-SHA256 signing so you can forward activity to Zapier, Make, n8n, or your own endpoint.
- Complete activity log with search, filter, date range, and CSV export.
- System status page with REST loopback test, active SEO plugin detection, and a debug bundle downloader.
SEO plugin integrations
The plugin talks to existing SEO plugins so there are no conflicts:
- Yoast SEO (Free and Premium) — meta description, title, canonical, Open Graph.
- Rank Math — meta description, title, canonical, Open Graph.
- SEOPress — meta description, title, canonical, Open Graph.
- Native fallback — if no SEO plugin is active, the plugin outputs standards-compliant meta tags itself.
Dashboard widget
A native WordPress dashboard widget summarises your audit score, top tracked keywords, recent organic clicks, and the latest activity from both the panel and the plugin. Refreshable with a single click.
Privacy-first
The plugin does not make any remote call until you enter a SEOYEN API key and complete the three-step setup wizard. Telemetry is opt-in and disabled by default. On uninstall, plugin data is kept unless you explicitly opt in to full data removal.
SEOYEN account required for AI features
The internal-links apply, redirect management, and local admin tools work without an account. Panel-driven features (AI content, meta description generation, audit auto-fix driven from the panel, suggestion lists) require an active SEOYEN account so the WordPress plugin can talk to the panel API.
External Services
This plugin connects to external services to provide its functionality. The integrations are documented below so you can make an informed decision before activating them.
1. SEOYEN Panel API (required for panel-driven features)
- Endpoint:
https://seoyen.com/panel/api/api-platform.php - What it does: Receives WordPress site actions (liveness pings, activation handshake, link/meta/schema/alt/social/autofix apply callbacks, redirect sync, activity log sync) and returns the data the plugin needs to render panel-driven UI (audit summary, link suggestions, AI content, audit auto-fix instructions).
- When: Only after the user enters a SEOYEN API key in SEOYEN SEO > Settings and completes the setup wizard. The plugin makes no outbound calls on activation or before the key is set.
- Data sent: site URL, admin email (once, during the first activation handshake), WordPress version, PHP version, plugin version, and action-specific payloads (e.g. redirect source and target URLs, meta description text, target post ID, activity log entries). No content of posts or media is sent unless you explicitly trigger a publish or apply action.
- Data received: AI-generated content, internal link suggestions, audit fixes, redirect and webhook configurations.
- Terms of service: https://seoyen.com/sartlar/
- Privacy policy: https://seoyen.com/gizlilik/
2. User-configured outbound webhooks (optional)
- Endpoints: User-provided URLs entered in the webhook settings.
- What it does: When enabled, the plugin POSTs HMAC-SHA256-signed JSON payloads to the URLs you configure whenever a tracked event occurs (for example, a redirect being created or an AI meta description being applied). You control the URLs and the event types.
- When: Only if you explicitly add at least one webhook endpoint and enable it.
- Data sent: The event name and a minimal payload describing the event. No credentials or user information is included.
- Terms and privacy: Determined by the third party that owns the webhook endpoint.
3. WordPress core REST self-call (loopback)
During the setup wizard the plugin makes a single request to its own /wp-json/seoyen/v1/ping endpoint to verify REST API availability. This is a loopback request to the same WordPress install and does not leave the server.
Screenshots

Dashboard overview with audit score, organic traffic summary, recent activity feed, and quick action cards for publish, redirects, audit, and panel. 
Redirect manager with sortable list, bulk actions, search, and CSV import for migrating from other redirect plugins or importing broken-backlink targets from the SEOYEN panel. 
Setup wizard — three-step API key, connect, and verify flow with inline validation. 
AI content suggestions — list of panel-generated drafts with one-click apply/reject buttons and a preview of the incoming change. 
Activity log with date-range filter, action and result filters, search box, and CSV export. 
System status page with REST loopback test, active SEO plugin detection, and debug bundle downloader.
Installation
- Upload the plugin ZIP via Plugins > Add New > Upload Plugin, or unzip into
wp-content/plugins/seoyen/. - Activate SEOYEN SEO Platform from the Plugins screen.
- Go to SEOYEN SEO > Settings and paste the API key generated in the SEOYEN panel (Settings > Integrations > WordPress Plugin).
- Click Connect to Panel. The plugin will run a three-step handshake and report when the connection is active.
- Open the SEOYEN SEO top-level menu to explore the dashboard, redirects, internal links, content suggestions, activity log, and system status pages.
FAQ
-
Do I need a SEOYEN account?
-
Yes for AI and panel-driven features (AI content publish, meta description apply, audit auto-fix from the panel, suggestion lists, webhook dispatch back to the panel). The redirect manager, admin UI, and local debugging pages work without a panel connection.
-
Which SEO plugins are supported?
-
Yoast SEO (Free and Premium), Rank Math, and SEOPress are detected automatically. If none of these are active, the plugin falls back to writing meta descriptions, canonical tags, and Open Graph tags itself. You only need one of these (including the native fallback) to get meta description support.
-
Can I use this plugin without the SEOYEN panel?
-
The redirect manager, admin UI, activity log, and system status work without a panel connection. AI features, audit auto-fix from the panel, and suggestion lists require an active SEOYEN account because the data comes from the panel API.
-
Does this plugin track users on my site?
-
No. The plugin has no public-facing tracking scripts. Telemetry is strictly opt-in (disabled by default) and only sends plugin version, WordPress version, and PHP version when enabled.
-
How do redirects work?
-
Redirects are stored in the custom table
{prefix}seoyen_redirects. On every public request the plugin hookstemplate_redirectat priority 1, normalizes the request URI, looks up the destination, and — if a match is found — issues awp_safe_redirect()with the configured status code. Hit counts are updated on theshutdownhook so they do not slow down the response. -
Will it conflict with Yoast, Rank Math, or SEOPress?
-
No. The plugin uses an adapter pattern. If Yoast is active, meta descriptions are written into Yoast’s post meta keys; the same is true for Rank Math and SEOPress. If none are active, the plugin writes its own meta tags in the head. The plugin never outputs duplicate meta tags.
-
Can I remove plugin data on uninstall?
-
Yes. In SEOYEN SEO > Settings there is a “Keep data on uninstall” toggle. When disabled, uninstalling the plugin drops the custom tables, deletes all
_seoyen_*post meta, and removes allseoyen_*options. The default is to keep data so you can reactivate without losing redirects or activity history. -
Is it GPL-compatible?
-
Yes. SEOYEN SEO Platform is released under GPLv2 or later, the same license as WordPress core.
-
Where do I report bugs or request features?
-
Please contact support through https://seoyen.com/ or open an issue in the SEOYEN panel’s help section.
Reviews
There are no reviews for this plugin.
Contributors and Developers
“SEOYEN SEO Platform” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “SEOYEN SEO Platform” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Change Log
1.0.12
- WP.org inceleme revizeleri:
rest_url()ile REST endpoint URL’leri düzeltildi (hardcoded/wp-json/kaldırıldı). register_setting()çağrıları tip-bazlı sanitize callback’lerle güncellendi (sanitize_text_field,sanitize_url,absint,rest_sanitize_boolean).- JSON-LD çıktısında
</script>breakout güvenlik açığı kapatıldı —JSON_UNESCAPED_SLASHESkaldırıldı,<\/replace koruması eklendi.
1.0.8
- Autofix kapsamı 45 check’ten 57 check’e çıkarıldı — SEOYEN Panel audit’teki 12 yeni sorun türü artık tek tıkla düzeltilebilir.
- 5 yeni kayıtlı check handler’ı:
content.meta_description_duplicate,content.low_word_count,content.h1_missing_in_content,schema.local_business_missing,ai_search.llms_full_missing— panel registry ile plugin handler listesi senkronize edildi. - 7 yeni spec-gereği check handler’ı:
social_meta.twitter_card_type_missing,schema.how_to_missing,schema.video_missing,schema.review_missing,hreflang.html_lang_missing,ai_search.claude_bot_allowed,ai_search.perplexity_bot_allowed. - Schema Markup genişlemesi: 4 yeni builder —
build_howto(H3/H4 + P regex ile adım parse),build_video(featured image thumbnail + yazı bilgileri),build_local_business(site bilgileri + override desteği),build_review(rating/author override ile). - Frontend SEO Output genişlemesi: apple-touch-icon, theme-color, twitter:card (site-level default) ve llms-full.txt virtual serving (
/llms-full.txt) artık plugin tarafından rendering priority 1’de emit edilir. - HTML lang attribute filter:
language_attributesWP filter’ı üzerinden kullanıcı tarafından seçilen locale uygulanır (BCP 47 kod doğrulaması ile). - AI bot allow kuralları: Claude ve Perplexity bot’ları için ayrı
allowmodu — önceki allow/block toggle’dan farklı olarak iki bot için de idempotent Allow: / yazımı. - Düşük kelime sayısı (
content.low_word_count) için AI tabanlı içerik genişletme handler’ı — panel AIcontent-expandpromptu ile uzatılmış içeriği yazıya ekler.
1.0.7
- Autofix kapsamı 14 check’ten 45 check’e çıkarıldı — SEOYEN Panel audit’in tespit ettiği çok daha geniş bir sorun yelpazesi artık tek tıkla düzeltilebilir.
- Yeni içerik yeniden yazma (rewrite) handler’ları: başlık çok kısa/uzun/duplicate, meta açıklama çok kısa/uzun/duplicate, H1 çok uzun/duplicate, alt metni çok kısa/uzun — her biri SEOYEN Panel’deki AI ile yeni içerik üretir ve uygular.
- Schema Markup genişlemesi: 6 yeni builder — Article, BreadcrumbList, Organization, WebSite (SearchAction dahil), Product (WooCommerce entegrasyonlu), FAQPage (içerikten Q&A regex + Gutenberg FAQ block parse). Payload yoksa plugin kendisi üretir.
- Social Meta genişlemesi: og:type, og:url, twitter:title, twitter:description, twitter:image için ayrı check_key desteği.
- Yönlendirme Zinciri (Redirect Chain) çözücü: panel zinciri tespit ettiğinde plugin ortadaki tüm redirect’leri pasifleştirip kaynak son hedef tek 301’e düşürür.
- Kırık Dış Link düzeltme:
links.broken_outgoingartık yeni hedef URL geldiğinde otomatik 301 yönlendirme oluşturur (kayıtbroken_backlinksorigin ile işaretlenir). - AI arama botları yönetimi:
ai_search.gpt_bot_blockedveai_search.claude_bot_blockedcheck’leri GPTBot, ClaudeBot, anthropic-ai bot’larını robots.txt extra’ya allow/block modunda ekler. - Mobil ikon/theme-color eksiklikleri:
mobile.apple_touch_icon_missing(site ikonu fallback),mobile.theme_color_missing(varsayılan #8b5cf6) artık tek tıkla düzeltilebilir. - Yanlış noindex kaldırma:
crawlability.noindex_wrongYoast/RankMath/SEOPress/native tüm seviyelerde noindex bayrağını temizler. - Çoklu meta/title/H1 tespiti:
content.multiple_title,content.multiple_meta_desc,content.multiple_h1— theme düzenlemesi gerektiren check’ler için detection-only + Türkçe açıklayıcı hint. - Integration base class’ına
set_og_field($post_id, $field, $value),set_twitter_field($post_id, $field, $value),set_title()(alias),set_meta_desc()(alias) metotları eklendi — plugin’lere bağımsız genel OG/Twitter kontrolü sağlar. - FileManager’a
update_robots_ai_bots($action, $bots)eklendi — robots.txt extra kısmında AI bot bloklarını idempotent şekilde günceller (eski blok varsa temizlenir, yenisi yazılır). - RedirectManager’a
deactivate_intermediates($chain_urls)eklendi — chain resolver için ortadaki 301’leri soft-delete (is_active=0) olarak işaretler. - SchemaManager builder’ları Google Rich Results Test uyumlu @id + mainEntityOfPage yapısı kullanır.
1.0.6
- Panel: wp_issue_fixed callback endpoint eklendi — plugin düzeltme tamamlandığında panel audit_issues tablosunda resolved=1 (veya detection-only skip durumunda muted=1) işaretlenir. Sayfa yenilendiğinde düzeltilen issue’lar listeden kaybolur.
- JS: Toplu URL düzeltme sonrası her URL satırı “✓ Düzeltildi” olarak görsel güncellenir (yeşil arka plan + disable button). Başarısız URL’ler kırmızı ile işaretlenir.
- URL eşleştirme iyileştirildi: trailing slash, http/https, encoding farklılıkları için çoklu varyant deneme (findUrlRow helper).
- AI hata mesajları iyileştirildi: “Yapay zeka servisi şu anda kullanılamıyor. Birkaç dakika sonra tekrar deneyin.” — HTTP 503 (önceki 500/502 yerine).
- CSS: .seoyen-audit-urls li.is-fixed / is-failed için görsel stilizasyon.
1.0.5
- AI-only düzeltme sistemi: Tek Tıkla Düzelt artık gerçek yapay zeka ile içerik üretir. Meta açıklama, başlık, H1, alt metin, OG, Twitter Card, schema, robots.txt ve llms.txt için tamamen AI tabanlı üretim.
- Fallback sistemi kaldırıldı: Yazı slug’ından, excerpt’ten veya dosya adından otomatik üretilen eski “akıllı fallback” mantığı artık yok — payload AI’dan gelmek zorunda, yoksa “Bu düzeltme yapay zeka ile içerik üretmeyi gerektirir” hatası verir.
- 10 yeni AI prompt şablonu: Her autofix check türü için Türkçe, SEO uyumlu, context-aware prompt.
- Yeni panel endpoint:
wp_generate_fix— plugin AJAX handler’ı önce panel’den AI üretim ister, dönen payload ile düzeltmeyi uygular. - Context-aware AI üretim: Her autofix çağrısı WordPress’ten ilgili verileri (post başlığı, içerik özeti, attachment meta, featured image, kategoriler, parent post) toplar ve AI’a ona göre prompt gönderir.
- AI kredi sistemi entegrasyonu: Kredi bittiğinde “Yapay Zeka krediniz bitti” modal’ı gösterilir, yenilenme tarihi görüntülenir, işlem yapılmaz.
- Plan gate: Tek Tıkla Düzelt, AI Yayınla, Uygula, yönlendirme yönetimi ve webhook oluşturma gibi yazma aksiyonları yalnızca Bireysel, Pro ve Enterprise paketlerinde kullanılabilir. Ücretsiz paket eklentiyi kurup panel verilerini görüntüleyebilir ama yazma yapamaz.
- Quick access check endpoint (
wp_quick_access_check): Plugin boot sırasında kullanıcının plan ve kredi durumunu panel’den sorgular, 12 saat boyunca cache’ler, UI’ı buna göre ayarlar. - Plan banner: Ücretsiz paket kullanıcıları için Dashboard ve İçerik sayfalarında bilgilendirme banner’ı.
- Credit banner: Kredi bittiğinde tüm ilgili sayfalarda yenilenme tarihi ile uyarı banner’ı.
- Detection-only check’ler korundu:
crawlability.canonical_missing,mobile.viewport_missing,social_meta.og_image_missingvehreflang.missingAI gerektirmez — WordPress verilerinden (permalink, featured image, WPML/Polylang) otomatik uygulanır.
1.0.4
- Tek Tıkla Düzelt artık gerçekten çalışıyor: audit handler’a 7 akıllı fallback eklendi — payload boş gönderildiğinde plugin WordPress verilerinden otomatik meta açıklama, alt metin, OG açıklama, hreflang vb. üretir.
- Meta ve OG açıklama fallback: yazı excerpt’i varsa onu, yoksa içeriğin ilk 155 karakteri (HTML strip + kelime sınırından kesim) kullanılır.
- Alt metin fallback: attachment başlığı parent post başlığı dosya adından insanlaştırılmış metin.
- Başlık fallback: payload boşsa yazı slug’ından insanlaştırılmış başlık üretilir.
- Hreflang akıllı tespit: WPML/Polylang aktifse alternatif URL’ler otomatik çekilir; tek dilli siteler için “skipped_no_alternates” (sessiz başarı) döner — hata vermez.
- URL resolve iyileştirmesi: query string, fragment, trailing slash, http/https farklılıkları artık otomatik handle ediliyor (get_page_by_path fallback dahil).
- Tek Tıkla Düzelt butonu artık issue’daki TÜM affected URL’leri sırayla düzeltir (ilk URL yerine). Kart üzerinde canlı sayaç: “Düzeltiliyor (3/8)…”.
- Kısmi başarı durumu: bazı URL’ler düzeltilip bazıları hata verirse “Kısmen düzeltildi (5/8)” mesajı gösterilir.
- Global audit fix’leri (viewport/robots/llms) URL gerektirmez — panel URL göndermese bile çalışır.
1.0.3
- 403 “Güvenlik doğrulaması başarısız” hatası kalıcı olarak çözüldü: Admin JS dosyaları artık footer yerine header’a yükleniyor, wp_localize_script ile emit edilen seoyenAdmin objesi inline script bloklarından önce hazır oluyor — nonce artık doğru geçiyor.
- Inline script’lerde ajaxUrl/nonce değişkenleri artık butona basma anında okunuyor (lazy read).
- Download endpoint (wp_download_plugin) artık X-Seoyen-Key header-auth ile de çalışıyor — WP native güncelleme akışında “Unauthorized” hatası çözüldü.
1.0.2
- Tek Tıkla Düzelt ve Bunu Düzelt butonları düzeltildi: AJAX handler artık REST dispatch yerine doğrudan Seoyen_Audit_Handler::autofix() çağırıyor (X-Seoyen-Key header beklentisi bypass edildi, admin nonce yeterli).
- 403 “Forbidden” hatası düzeltildi: Tüm seoyen_admin ve seoyen_redirects_action nonce kontrolleri artık graceful fail veriyor — kullanıcıya “Sayfayı yenileyip tekrar deneyin” mesajı gösterilir (wp_die yerine JSON error).
- “Tümü” sekmesi artık hem Site Denetimi düzeltmelerini hem de AI önerilerini/makalelerini yan yana gösteriyor.
- Plugin güncelleme sonrası panel’e otomatik versiyon sync eklendi: upgrader_process_complete sonrası ve admin_init’te plugin_version mismatch varsa panel’e wp_site_status ping atılıyor — “Güncelleme mevcut” badge’i artık Check Now gerektirmeden kaybolur.
- Tüm admin UI tamamen Türkçeleştirildi: menü, sekmeler, kartlar, butonlar, bildirimler. ASCII-safe yazımlar (baglan, icin, duzelt, vs.) doğru Türkçe karakterlere (bağlan, için, düzelt) çevrildi.
- Setup wizard “API key required” hatası düzeltildi: key önce option’a yazılmadan explicit olarak test edilir.
1.0.1
- Added Site Audit Fixes tab in Content Suggestions page: shows up to 14 auto-fixable audit checks pulled from the SEOYEN panel with one-click fix buttons.
- Added AI Articles tab in Content Suggestions page: lists completed AI Writer articles from the panel with Publish-to-WP action.
- Internal Links page now reads from the live link_opportunities data source; suggestions auto-populate whenever the panel internal-links page is visited.
- Fixed setup wizard “API key required” error by passing the key explicitly on the activation request instead of relying on the option cache.
- Fixed redirect form: source and target URLs accepted as relative paths (
/eski,/yeni) and site-local full URLs; no morehttp://yenicorruption. - Suppressed foreign admin notices on SEOYEN admin pages so the page title area is not polluted by other plugins.
- Made Dashboard, Settings, Redirects, and System Status pages use the full content width.
- Added WP native update flow with dual-source detection (WordPress.org if the plugin is listed there, SEOYEN panel otherwise).
- Added plugin admin update banner with version-based dismiss and security-update override.
- Added panel “Check for Updates” button on the Settings > General tab.
- Added menu entry “WordPress Eklentisi” in the SEOYEN panel sidebar with a dedicated install/upgrade page and per-project API key management.
- Added Turkish translation (.po / .mo) plus JSON translations for admin JS.
- Panel update_check endpoint parses
Version,Stable tag, tested/requires/requires_php, changelog, and upgrade_notice from the readme.txt.
1.0.0
- Initial public release.
- 34 REST API endpoints under
/wp-json/seoyen/v1/(system, content, meta, media, schema, social, links, redirects, audit, files, activity, bulk, webhooks). - 4 SEO plugin adapters (Yoast SEO, Rank Math, SEOPress, native fallback).
- 14 audit auto-fix check types (title_missing, meta_missing, h1_missing, alt_missing, canonical_missing, robots_missing, json_ld_missing, og_missing, viewport_missing, hreflang_missing, llms_txt_missing, and more).
- Redirect manager with exact / prefix / regex matching, hit-count analytics, and CSV bulk import.
- Seven admin pages: Dashboard, Settings, Redirects, Internal Links, Content Suggestions, Activity Log, System Status.
- Dashboard widget for wp-admin index page.
- Outbound webhook dispatcher with HMAC-SHA256 signing.
- Activity log with search, filter, and CSV export.
- Virtual
robots.txtandllms.txtserving. - Full i18n support with POT template (
languages/seoyen.pot).