{"id":377873,"date":"2026-09-30T10:29:47","date_gmt":"2026-09-30T10:29:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/toro-template-oriented-rank-optimizer\/"},"modified":"2026-10-06T05:57:11","modified_gmt":"2026-10-06T05:57:11","slug":"tonkatsu-seo","status":"publish","type":"plugin","link":"https:\/\/lmo.wordpress.org\/plugins\/tonkatsu-seo\/","author":23433906,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.0.2","stable_tag":"0.0.2","tested":"7.1.3","requires":"6.5","requires_php":"8.1","requires_plugins":null,"header_name":"TONKATSU (Template-Oriented No-database Knowledge-graph & Tag Setup Utility)","header_author":"lionheartgroup","header_description":"TONKATSU outputs SEO metadata, structured data and sitemap adjustments configured entirely in theme code, with nothing stored in the database.","assets_banners_color":"b4a494","last_updated":"2026-10-06 05:57:11","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/lionheart-group\/wp-template-oriented-plugins\/tree\/master\/plugins\/tonkatsu-seo","header_author_uri":"https:\/\/www.lionheart.co.jp\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":184,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.0.1":{"tag":"0.0.1","author":"lionheartgroup","date":"2026-09-30 23:09:23","revision":3722185},"0.0.2":{"tag":"0.0.2","author":"lionheartgroup","date":"2026-10-06 05:57:11","revision":3730083}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.jpg":{"filename":"icon-128x128.jpg","revision":3720975,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.jpg":{"filename":"icon-256x256.jpg","revision":3720975,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3720975,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3720975,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.0.1","0.0.2"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[2516,683,6487,186,1557],"plugin_category":[55],"plugin_contributors":[256134],"plugin_business_model":[],"class_list":["post-377873","plugin","type-plugin","status-publish","hentry","plugin_tags-json-ld","plugin_tags-meta","plugin_tags-open-graph","plugin_tags-seo","plugin_tags-sitemap","plugin_category-seo-and-marketing","plugin_contributors-lionheartgroup","plugin_committers-lionheartgroup"],"banners":{"banner":"https:\/\/ps.w.org\/tonkatsu-seo\/assets\/banner-772x250.jpg?rev=3720975","banner_2x":"https:\/\/ps.w.org\/tonkatsu-seo\/assets\/banner-1544x500.jpg?rev=3720975","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/tonkatsu-seo\/assets\/icon-128x128.jpg?rev=3720975","icon_2x":"https:\/\/ps.w.org\/tonkatsu-seo\/assets\/icon-256x256.jpg?rev=3720975","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Template-Oriented No-database Knowledge-graph &amp; Tag Setup Utility (TONKATSU) handles the SEO output of a WordPress site \u2014 title, meta description, canonical, robots, Open Graph, Twitter Card and JSON-LD \u2014 and adjusts WordPress core's XML sitemaps.<\/p>\n\n<p>Everything is configured in the theme's PHP code, on <code>init<\/code>. No configuration is stored in the database and there is no settings screen, so the SEO configuration is reviewed, versioned and deployed together with the templates that render the pages. A read-only screen under Tools shows what the theme registered and what each page resolves to.<\/p>\n\n<p>Redirects (exact paths, path prefixes and regular expressions, including 410 Gone) are registered in the theme too, so moved URLs are kept with the code that moved them. Optionally, TONKATSU logs the redirects it answers \u2014 the only data it ever stores in the database.<\/p>\n\n<p>Per-post values that editors maintain (for example in custom fields) are supplied through the <code>tonkatsu_post_values<\/code> filter.<\/p>\n\n<p>TONKATSU stands down while Rank Math, Yoast SEO, All in One SEO or SEOPress is active, and shows an admin notice instead.<\/p>\n\n<p>GitHub and documentation for this plugin can be found at:<\/p>\n\n<p><a href=\"https:\/\/github.com\/lionheart-group\/wp-template-oriented-plugins\/tree\/master\/plugins\/tonkatsu-seo\">https:\/\/github.com\/lionheart-group\/wp-template-oriented-plugins\/tree\/master\/plugins\/tonkatsu-seo<\/a><\/p>\n\n<!--section=installation-->\n<ol>\n<li>From the WP admin panel, click \"Plugins\" -&gt; \"Add new\".<\/li>\n<li>In the browser input box, type \"Template-Oriented No-database Knowledge-graph &amp; Tag Setup Utility\".<\/li>\n<li>Select the \"Template-Oriented No-database Knowledge-graph &amp; Tag Setup Utility\" plugin and click \"Install\".<\/li>\n<li>Activate the plugin.<\/li>\n<\/ol>\n\n<p>OR\u2026<\/p>\n\n<ol>\n<li>Download the plugin from this page.<\/li>\n<li>Save the .zip file to a location on your computer.<\/li>\n<li>Open the WP admin panel, and click \"Plugins\" -&gt; \"Add new\".<\/li>\n<li>Click \"upload\".. then browse to the .zip file downloaded from this page.<\/li>\n<li>Click \"Install\".. and then \"Activate plugin\".<\/li>\n<\/ol>\n\n<p>Then register the configuration in your theme \u2014 see the documentation.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20are%20the%20settings%3F\"><h3>Where are the settings?<\/h3><\/dt>\n<dd><p>In your theme's code. Tools -&gt; SEO (TONKATSU) shows them, read-only.<\/p><\/dd>\n<dt id=\"what%20does%20tonkatsu%20store%20in%20the%20database%3F\"><h3>What does TONKATSU store in the database?<\/h3><\/dt>\n<dd><p>No settings. With the redirect log turned on in the theme (SiteConfig <code>logRedirects<\/code>), it stores a hit count per redirect and one row per redirect answered \u2014 the requested URL, the target, the status, the referrer without its query string and whether the visitor looked like a bot \u2014 in two tables of its own, plus their schema version in the <code>tonkatsu_db_version<\/code> option. No IP addresses or user agents are stored, and rows are deleted after 90 days by default. Deleting the plugin removes the tables and the option.<\/p><\/dd>\n<dt id=\"does%20tonkatsu%20generate%20its%20own%20sitemap%3F\"><h3>Does TONKATSU generate its own sitemap?<\/h3><\/dt>\n<dd><p>No. It adjusts WordPress core's sitemap at \/wp-sitemap.xml.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.0.2<\/h4>\n\n<ul>\n<li>Added: redirects registered in theme code with <code>Seo::registerRedirects()<\/code> \u2014 exact, prefix and (when declared) regex matches, with 301, 302, 307, 308 and 410. Listed on Tools -&gt; SEO (TONKATSU), which warns about redirects that hide a registered page and about chained redirects. They stand down while another SEO plugin is active. See docs\/settings\/redirectconfig.md.<\/li>\n<li>Added: an opt-in redirect log (<code>SiteConfig::$logRedirects<\/code>). It keeps hit counts per redirect and each hit for <code>redirectLogDays<\/code> days (default 90) in two tables, without IP addresses or user agents, and lists them on the Tools page. Uninstalling the plugin removes the tables. Settings are still never stored in the database.<\/li>\n<li>Requires WordPress 6.5.<\/li>\n<\/ul>\n\n<h4>0.0.1<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"TONKATSU outputs SEO metadata, structured data and sitemap adjustments configured entirely in theme code.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/377873","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=377873"}],"author":[{"embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/lionheartgroup"}],"wp:attachment":[{"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=377873"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=377873"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=377873"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=377873"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=377873"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/lmo.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=377873"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}