{"id":305609,"date":"2026-05-04T13:42:39","date_gmt":"2026-05-04T13:42:39","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/gt-table-block\/"},"modified":"2026-05-06T09:39:17","modified_gmt":"2026-05-06T09:39:17","slug":"gt-table-block","status":"publish","type":"plugin","link":"https:\/\/fr.wordpress.org\/plugins\/gt-table-block\/","author":5713323,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"0.1.1","stable_tag":"trunk","tested":"6.9.4","requires":"6.6","requires_php":"7.4","requires_plugins":null,"header_name":"GT Table Block","header_author":"Birgit Pauli-Haack","header_description":"Enhances the core Table block with sticky header, styled first column, sticky first column, and cell merging \u2014 as a block variation with composable toggles.","assets_banners_color":"401974","last_updated":"2026-05-06 09:39:17","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/bph\/gt-table-block","header_author_uri":"https:\/\/gutenbergtimes.com\/table-block","rating":0,"author_block_rating":0,"active_installs":0,"downloads":60,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.1":{"tag":"0.1.1","author":"bph","date":"2026-05-04 13:42:24"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3524138,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3524138,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3524138,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3524138,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3524138,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"meta\":{\"title\":\"GT Table Block Demo\",\"description\":\"Test the GT Table Block plugin, a light-weight enhanced variation to the core-table block.\",\"author\":\"Birgit Pauli-Haack (bph)\"},\"landingPage\":\"\\\/?p=1000\",\"preferredVersions\":{\"php\":\"8.3\",\"wp\":\"latest\"},\"login\":true,\"steps\":[{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"url\",\"url\":\"https:\\\/\\\/github.com\\\/bph\\\/gt-table-block\\\/releases\\\/latest\\\/download\\\/gt-table-block.zip\",\"caption\":\"Downloading GT Table Block\"},\"options\":{\"activate\":true}},{\"step\":\"runPHP\",\"code\":\"<?php\\nrequire_once '\\\/wordpress\\\/wp-load.php';\\nif ( get_post( 1000 ) ) { return; }\\n$markup = base64_decode( 'PCEtLSB3cDp0YWJsZSB7ImNsYXNzTmFtZSI6ImlzLXN0eWxlLXN0cmlwZXMiLCJzdGlja3lIZWFkZXIiOnRydWUsInN0aWNreUhlYWRlck9mZnNldCI6MjV9IC0tPgo8ZmlndXJlIGNsYXNzPSJ3cC1ibG9jay10YWJsZSBpcy1zdHlsZS1zdHJpcGVzIGhhcy1zdGlja3ktaGVhZGVyIiBzdHlsZT0iLS1ndC1zdGlja3ktaGVhZGVyLW9mZnNldDoyNXB4Ij48dGFibGU+PHRoZWFkPjx0cj48dGggc2NvcGU9ImNvbCI+PHN0cm9uZz5CbG9jazwvc3Ryb25nPjwvdGg+PHRoIHNjb3BlPSJjb2wiPjxzdHJvbmc+QWxpZ248L3N0cm9uZz48L3RoPjx0aCBzY29wZT0iY29sIj48c3Ryb25nPlR5cG9ncmFwaHk8L3N0cm9uZz48L3RoPjx0aCBzY29wZT0iY29sIj48c3Ryb25nPkNvbG9yPC9zdHJvbmc+PC90aD48dGggc2NvcGU9ImNvbCI+PHN0cm9uZz5EaW1lbnNpb248L3N0cm9uZz48L3RoPjx0aCBzY29wZT0iY29sIj48c3Ryb25nPkJvcmRlcjwvc3Ryb25nPjwvdGg+PHRoIHNjb3BlPSJjb2wiPjxzdHJvbmc+TGF5b3V0PC9zdHJvbmc+PC90aD48dGggc2NvcGU9ImNvbCI+PHN0cm9uZz5HcmFkaWVudDwvc3Ryb25nPjwvdGg+PHRoIHNjb3BlPSJjb2wiPjxzdHJvbmc+RHVvdG9uZTwvc3Ryb25nPjwvdGg+PHRoIHNjb3BlPSJjb2wiPjxzdHJvbmc+U2hhZG93PC9zdHJvbmc+PC90aD48dGggc2NvcGU9ImNvbCI+PHN0cm9uZz5CYWNrZ3IuSW1nPC9zdHJvbmc+PC90aD48L3RyPjwvdGhlYWQ+PHRib2R5Pjx0cj48dGQ+PHN0cm9uZz5BY2NvcmRpb248L3N0cm9uZz4gPC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPjwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48L3RyPjx0cj48dGQ+PHN0cm9uZz5BY2NvcmRpb24gSGVhZGluZzwvc3Ryb25nPiA8L3RkPjx0ZD48L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPjwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD48L3RkPjwvdHI+PHRyPjx0ZD48c3Ryb25nPkFjY29yZGlvbiBJdGVtPC9zdHJvbmc+IDwvdGQ+PHRkPjwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPjwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD48L3RkPjwvdHI+PHRyPjx0ZD48c3Ryb25nPkFjY29yZGlvbiBQYW5lbDwvc3Ryb25nPiA8L3RkPjx0ZD48L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD48L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+QXJjaGl2ZXMgPC90aD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPjwvdGQ+PHRkPi08L3RkPjx0ZD4tIDwvdGQ+PHRkPjwvdGQ+PC90cj48dHI+PHRoIHNjb3BlPSJyb3ciPkF1ZGlvPC90aD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPi08L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PHRkPjwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+PHRyPjx0aCBzY29wZT0icm93Ij5BdmF0YXI8L3RoPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPjwvdGQ+PHRkPuKchTwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90cj48dHI+PHRkPjxzdHJvbmc+QnJlYWRjcnVtYnM8L3N0cm9uZz48L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPjwvdGQ+PHRkPuKYke+4jyBuZXc8L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+PHRyPjx0aCBzY29wZT0icm93Ij5CdXR0b248L3RoPjx0ZD48L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPuKchTwvdGQ+PHRkPjwvdGQ+PC90cj48dHI+PHRoIHNjb3BlPSJyb3ciPkJ1dHRvbnM8L3RoPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+4pyFPC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q2FsZW5kYXI8L3RoPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q2F0ZWdvcmllczwvdGg+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q29kZTwvdGg+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q29sdW1uPC90aD48dGQ+PC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPuKchTwvdGQ+PHRkPjwvdGQ+PC90cj48dHI+PHRoIHNjb3BlPSJyb3ciPkNvbHVtbnM8L3RoPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+4pyFPC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q29tbWVudCBBdXRob3IgQXZhdGFyPC90aD48dGQ+PC90ZD48dGQ+LTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q29tbWVudCBBdXRob3IgTmFtZTwvdGg+PHRkPjwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPuKchTwvdGQ+PHRkPi08L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q29tbWVudCBDb250ZW50PC90aD48dGQ+PC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPuKchTwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+PHRyPjx0aCBzY29wZT0icm93Ij5Db21tZW50IERhdGU8L3RoPjx0ZD48L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+LTwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90cj48dHI+PHRoIHNjb3BlPSJyb3ciPkNvbW1lbnQgRWRpdCBMaW5rPC90aD48dGQ+PC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPjwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+PHRyPjx0aCBzY29wZT0icm93Ij5Db21tZW50IFJlcGx5IExpbms8L3RoPjx0ZD48L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+LTwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90cj48dHI+PHRoIHNjb3BlPSJyb3ciPkNvbW1lbnQgVGVtcGxhdGU8L3RoPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+4pyFPC90ZD48dGQ+4piR77iPIG5ldzwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPjx0cj48dGggc2NvcGU9InJvdyI+Q29tbWVudHM8L3RoPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7imJHvuI8gbmV3PC90ZD48dGQ+PC90ZD48dGQ+4pyFPC90ZD48dGQ+LTwvdGQ+PHRkPjwvdGQ+PHRkPjwvdGQ+PC90cj48dHI+PHRoIHNjb3BlPSJyb3ciPkNvbW1lbnRzIFBhZ2luYXRpb248L3RoPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PHRkPuKchTwvdGQ+PHRkPjwvdGQ+PHRkPi08L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjwvdHI+PHRyPjx0aCBzY29wZT0icm93Ij5Db21tZW50cyBQYWdpbmF0aW9uIE5leHQ8L3RoPjx0ZD48L3RkPjx0ZD7inIU8L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+LTwvdGQ+PHRkPi08L3RkPjx0ZD7inIU8L3RkPjx0ZD4tPC90ZD48dGQ+PC90ZD48dGQ+PC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48L2ZpZ3VyZT4KPCEtLSAvd3A6dGFibGUgLS0+' );\\nwp_insert_post( [\\n    'import_id'    => 1000,\\n    'post_type'    => 'post',\\n    'post_status'  => 'publish',\\n    'post_title'   => 'Roster of Design Tools \\u2014 Sticky Header Demo',\\n    'post_content' => $markup,\\n] );\"},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"gt-table-block\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["0.1.1"],"block_files":[],"assets_screenshots":[],"screenshots":[],"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[1220,148857,261856,148076,2289],"plugin_category":[],"plugin_contributors":[246680],"plugin_business_model":[],"class_list":["post-305609","plugin","type-plugin","status-publish","hentry","plugin_tags-block","plugin_tags-block-editor","plugin_tags-block-variation","plugin_tags-gutenberg","plugin_tags-table","plugin_contributors-bph","plugin_committers-bph"],"banners":{"banner":"https:\/\/ps.w.org\/gt-table-block\/assets\/banner-772x250.png?rev=3524138","banner_2x":"https:\/\/ps.w.org\/gt-table-block\/assets\/banner-1544x500.png?rev=3524138","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/gt-table-block\/assets\/icon-128x128.png?rev=3524138","icon_2x":"https:\/\/ps.w.org\/gt-table-block\/assets\/icon-256x256.png?rev=3524138","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>GT Table Block extends the built-in <code>core\/table<\/code> block with optional features that compose cleanly \u2014 each feature is an independent toggle, not a block style, so any combination can be active on the same table.<\/p>\n\n<p><strong>Available in this release:<\/strong><\/p>\n\n<ul>\n<li><strong>Sticky header row<\/strong> \u2014 the <code>&lt;thead&gt;<\/code> row pins to the top of the viewport while the table body scrolls. Includes a numeric offset control for sites with a fixed admin bar or site header. Pure CSS at runtime (no frontend JavaScript). The sticky background is an opaque CSS variable with full theme.json customization support (see FAQ below).<\/li>\n<li><strong>Styled first column<\/strong> \u2014 gives the first column the same visual weight as the header row (bold, optional themeable background) and adds <code>scope=\"row\"<\/code> to those cells in the saved markup so screen readers announce them as row headers. Addresses Gutenberg core issue #1470 (open since 2017). Pure CSS for the styling; the a11y attribute is added at save time only, so the editor preview stays unchanged.<\/li>\n<\/ul>\n\n<p><strong>Planned for future releases:<\/strong><\/p>\n\n<ul>\n<li>Sticky first column for wide tables with horizontal scroll \u2014 v0.3.0.<\/li>\n<li>Merge \/ unmerge cells via a block toolbar control \u2014 v0.4.0.<\/li>\n<\/ul>\n\n<h4>Why a variation, not a replacement block?<\/h4>\n\n<p>The plugin deliberately extends <code>core\/table<\/code> rather than forking it, so existing tables stay compatible with core as it evolves. Independent boolean attributes also let any combination of features be active at once \u2014 which block styles (a mutually exclusive radio group) cannot offer.<\/p>\n\n<h3>Source code<\/h3>\n\n<p>Source code, build tools, issue tracker, and development log: https:\/\/github.com\/bph\/gt-table-block<\/p>\n\n<p>The plugin is built with <code>@wordpress\/scripts<\/code> (see the repository's README for build instructions). Each tagged release on GitHub corresponds to the stable tag published here.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code> or install via the Plugins screen.<\/li>\n<li>Activate through the <strong>Plugins<\/strong> menu.<\/li>\n<li>Insert the <strong>Enhanced Table<\/strong> variation from the block inserter, or convert an existing Table block via the Block Settings panel.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20replace%20the%20core%20table%20block%3F\"><h3>Does it replace the core Table block?<\/h3><\/dt>\n<dd><p>No. It registers a variation. Existing core Table blocks are unaffected until you enable a feature toggle on them.<\/p><\/dd>\n<dt id=\"does%20it%20need%20frontend%20javascript%3F\"><h3>Does it need frontend JavaScript?<\/h3><\/dt>\n<dd><p>No. Sticky header, header column styling, and sticky first column are pure CSS. Only the editor ships JS.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20block%20themes%3F\"><h3>Does it work with block themes?<\/h3><\/dt>\n<dd><p>Yes. It targets <code>core\/table<\/code> and uses the <code>wp-block-table<\/code> class chain for specificity without <code>!important<\/code>.<\/p><\/dd>\n<dt id=\"how%20do%20i%20change%20the%20sticky%20header%20background%20color%3F\"><h3>How do I change the sticky header background color?<\/h3><\/dt>\n<dd><p>The sticky header is painted with an opaque background so body rows don't show through it. It resolves in this order:<\/p>\n\n<ol>\n<li><code>--gt-sticky-header-bg<\/code> \u2014 a per-block or local override (wins over everything).<\/li>\n<li><code>--wp--custom--gt-sticky-header-bg<\/code> \u2014 a theme.json <code>settings.custom<\/code> value.<\/li>\n<li><code>Canvas<\/code> \u2014 the CSS system color (browser document background, adapts to light\/dark mode).<\/li>\n<\/ol>\n\n<p><strong>Theme-wide via theme.json (literal color):<\/strong><\/p>\n\n<pre><code>{ \"settings\": { \"custom\": { \"gtStickyHeaderBg\": \"#f5f5f5\" } } }\n<\/code><\/pre>\n\n<p><strong>Theme-wide via theme.json (reference a theme preset):<\/strong><\/p>\n\n<pre><code>{ \"settings\": { \"custom\": { \"gtStickyHeaderBg\": \"var(--wp--preset--color--base)\" } } }\n<\/code><\/pre>\n\n<p>The value is emitted into the CSS variable as-is, so any WP-generated preset works \u2014 <code>--wp--preset--color--accent<\/code>, <code>--wp--preset--color--contrast-2<\/code>, or any palette slug your theme registers.<\/p>\n\n<p>In both cases WordPress serializes <code>settings.custom.gtStickyHeaderBg<\/code> as the CSS variable <code>--wp--custom--gt-sticky-header-bg<\/code>, which the plugin reads as a fallback.<\/p>\n\n<p><strong>Theme-wide via raw CSS in theme.json:<\/strong><\/p>\n\n<pre><code>{ \"styles\": { \"css\": \".wp-block-table.has-sticky-header { --gt-sticky-header-bg: var(--wp--preset--color--base); } \" } }\n<\/code><\/pre>\n\n<p><strong>Per-block override:<\/strong> add an inline style or Additional CSS class that sets <code>--gt-sticky-header-bg<\/code> on the <code>&lt;figure&gt;<\/code>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>New feature: <strong>Styled first column<\/strong>. Toggle in the Enhanced Table panel makes the first body\/foot cells bold and adds <code>scope=\"row\"<\/code> to them in the saved HTML for screen-reader semantics (Gutenberg #1470). Themeable background via the <code>--gt-header-column-bg<\/code> CSS variable.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Documentation: shorter Short Description (Plugin Check 150-char limit), align GitHub README with readme.txt scope. No code changes.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>Initial release \u2014 sticky header row with optional offset control. Further features ship in subsequent releases.<\/li>\n<\/ul>","raw_excerpt":"Sticky header and styled first column for the core Table block, delivered as an opt-in block variation that leaves existing tables untouched.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/305609","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=305609"}],"author":[{"embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/bph"}],"wp:attachment":[{"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=305609"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=305609"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=305609"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=305609"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=305609"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=305609"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}