{"id":346245,"date":"2026-07-31T05:06:18","date_gmt":"2026-07-31T05:06:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/tabilo-table-builder-block\/"},"modified":"2026-08-24T11:47:29","modified_gmt":"2026-08-24T11:47:29","slug":"tabilo-table-builder-block","status":"publish","type":"plugin","link":"https:\/\/sah.wordpress.org\/plugins\/tabilo-table-builder-block\/","author":14977198,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.3.0","stable_tag":"1.3.0","tested":"7.1","requires":"6.7","requires_php":"7.4","requires_plugins":null,"header_name":"Tabilo - Table Builder Block","header_author":"Zakaria Binsaifullah","header_description":"Build responsive pricing, comparison, and data tables in the WordPress block editor. Insert any block into cells - no shortcodes, no page builder.","assets_banners_color":"70738c","last_updated":"2026-08-24 11:47:29","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":183,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"binsaifullah","date":"2026-07-31 05:06:04"},"1.1.0":{"tag":"1.1.0","author":"binsaifullah","date":"2026-08-17 09:57:59"},"1.2.0":{"tag":"1.2.0","author":"binsaifullah","date":"2026-08-18 05:48:17"},"1.3.0":{"tag":"1.3.0","author":"binsaifullah","date":"2026-08-24 11:47:29"}},"upgrade_notice":{"1.3.0":"<p>Adds External Source: build a table from a Google Sheet or a CSV\/Excel file on the web, and optionally keep it in sync automatically. Also brings a redesigned Settings \u2192 Tabilo dashboard (Overview, Patterns, Blocks, Import data, Settings) and a fix so an imported spreadsheet link is kept by default instead of discarded.<\/p>","1.2.0":"<p>Adds Import Data: build a table straight from a CSV or Excel file, with a preview before you import.<\/p>","1.1.0":"<p>Adds Stacked Card responsive mode, a sticky table header, and per-column colors for the header and footer.<\/p>","1.0.0":"<p>Initial release of Tabilo \u2013 Table Builder Block for Gutenberg.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3663318,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3652062,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3652062,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"tabilo\/rating":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"tabilo\/rating","version":"1.3.0","title":"Rating","category":"tabilo","description":"Shows star rating with number of ratings.","example":{},"supports":{"anchor":true,"html":false,"align":["wide","full"],"spacing":{"margin":true,"padding":true}},"attributes":{"blockStyle":{"type":"object"},"rating":{"type":"number","default":4.5},"totalRating":{"type":"number","default":5},"showNRating":{"type":"boolean","default":false},"nrPos":{"type":"string","default":"nr_right"},"ratingSize":{"type":"number"},"ratingNsize":{"type":"number"},"ratingColor":{"type":"string"},"nuRatColor":{"type":"string"},"alignment":{"type":"string","default":""}},"textdomain":"tabilo-table-builder-block","editorScript":"file:.\/index.js","style":"file:.\/style-index.css"},"tabilo\/icon":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"tabilo\/icon","version":"1.3.0","title":"Icon","category":"tabilo","description":"Shows SVG icon from library or custom SVG code.","example":{},"supports":{"anchor":true,"html":false,"spacing":{"margin":true,"padding":true}},"attributes":{"blockStyle":{"type":"object"},"iconSource":{"type":"string","default":"library"},"icon":{"type":"string","default":"check-circle"},"svgCode":{"type":"string"},"alignment":{"type":"string","default":""},"iconColor":{"type":"string"},"iconSize":{"type":"number"}},"textdomain":"tabilo-table-builder-block","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js"},"tabilo\/table":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"tabilo\/table","version":"1.3.0","title":"Table Builder","category":"tabilo","description":"Build flexible table with any content.","example":{},"supports":{"anchor":true,"html":false,"align":["wide","full"]},"styles":[{"name":"default","label":"Default","isDefault":true},{"name":"striped","label":"Striped"},{"name":"separated","label":"Separated"}],"attributes":{"blockStyle":{"type":"object"},"hasHeader":{"type":"boolean","default":false},"hasFooter":{"type":"boolean","default":false},"isStickyHeader":{"type":"boolean","default":false},"stickyHeaderOffset":{"type":"string","default":""},"headerCells":{"type":"array","default":[]},"headerCellColors":{"type":"array","default":[]},"footerCellColors":{"type":"array","default":[]},"footerCells":{"type":"array","default":[]},"columnCount":{"type":"number","default":1},"rowCount":{"type":"number","default":1},"isGenerated":{"type":"boolean","default":false},"isFixedLayout":{"type":"boolean","default":false},"tableBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"cellPadding":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"headPadding":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"tableBg":{"type":"string"},"tableColor":{"type":"string"},"alignment":{"type":"string","default":""},"theadBg":{"type":"string"},"theadColor":{"type":"string"},"tfootBg":{"type":"string"},"tfootColor":{"type":"string"},"stripedColor":{"type":"string"},"stripedBg":{"type":"string"},"tableCellBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"tableCellRadius":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"tableRowBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"headBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"cheadBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"footerBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"cfooterBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"shSpacing":{"type":"string"},"svSpacing":{"type":"string"},"thFontSize":{"type":"string"},"tfFontSize":{"type":"string"},"responsiveMode":{"type":"string","default":""},"stackedRowDirection":{"type":"string","default":"vertical"},"stackedCellDirection":{"type":"string","default":"horizontal"},"tableMinWidth":{"type":"string"},"showScrollIndicator":{"type":"boolean","default":false},"scrollIndicatorText":{"type":"string","default":"\u2190 Scroll horizontally to see all columns \u2192"},"indicatorColor":{"type":"string"},"indicatorFontSize":{"type":"string"},"indicatorMargin":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"dataSource":{"type":"object"},"isSynced":{"type":"boolean","default":false}},"providesContext":{"tabilo\/isSynced":"isSynced"},"textdomain":"tabilo-table-builder-block","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css"},"tabilo\/table-row":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"tabilo\/table-row","version":"1.3.0","title":"Table Row","parent":["tabilo\/table"],"category":"tabilo","description":"Table Row block for Tabilo.","example":{},"supports":{"anchor":false},"attributes":{"blockStyle":{"type":"object"},"rowColor":{"type":"string"},"rowBg":{"type":"string"},"tableRowBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}}},"textdomain":"tabilo-table-builder-block","editorScript":"file:.\/index.js"},"tabilo\/table-cell":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"tabilo\/table-cell","version":"1.3.0","title":"Table Cell","parent":["tabilo\/table","tabilo\/table-row"],"category":"tabilo","description":"Table Cell block for Tabilo.","example":{},"supports":{"anchor":false},"attributes":{"blockStyle":{"type":"object"},"cellColor":{"type":"string"},"cellBg":{"type":"string"},"tableCellBorder":{"type":"object","default":{"top":"","right":"","bottom":"","left":""}},"dataLabel":{"type":"string","default":""}},"usesContext":["tabilo\/isSynced"],"textdomain":"tabilo-table-builder-block","editorScript":"file:.\/index.js"}},"tagged_versions":["1.0.0","1.1.0","1.2.0","1.3.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3629398,"resolution":"1","location":"assets","locale":"","width":5104,"height":2542},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3629398,"resolution":"2","location":"assets","locale":"","width":2758,"height":2062},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3629398,"resolution":"3","location":"assets","locale":"","width":2562,"height":1658},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3629398,"resolution":"4","location":"assets","locale":"","width":2488,"height":1536},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3652062,"resolution":"5","location":"assets","locale":"","width":1389,"height":885},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3663318,"resolution":"6","location":"assets","locale":"","width":3100,"height":2174}},"screenshots":{"1":"Build flexible tables visually inside the WordPress block editor.","2":"Insert any block \u2014 images, buttons, icons and ratings \u2014 into your cells.","3":"40+ ready-made pricing, comparison and data table patterns.","4":"Fine-grained styling controls for colors, borders, spacing and typography.","5":"Import Data \u2014 build a table straight from a CSV or Excel file, with a preview before you import.","6":"External Source \u2014 build a table from a Google Sheet or a file on the web, and keep it in sync."}},"plugin_section":[],"plugin_tags":[4397,151844,4391,2289,148936],"plugin_category":[],"plugin_contributors":[174986],"plugin_business_model":[],"class_list":["post-346245","plugin","type-plugin","status-publish","hentry","plugin_tags-comparison-table","plugin_tags-gutenberg-block","plugin_tags-pricing-table","plugin_tags-table","plugin_tags-table-builder","plugin_contributors-binsaifullah","plugin_committers-binsaifullah"],"banners":{"banner":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/banner-772x250.png?rev=3652062","banner_2x":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/banner-1544x500.png?rev=3652062","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/icon-256x256.png?rev=3663318","icon_2x":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/icon-256x256.png?rev=3663318","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/screenshot-1.png?rev=3629398","caption":"Build flexible tables visually inside the WordPress block editor."},{"src":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/screenshot-2.png?rev=3629398","caption":"Insert any block \u2014 images, buttons, icons and ratings \u2014 into your cells."},{"src":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/screenshot-3.png?rev=3629398","caption":"40+ ready-made pricing, comparison and data table patterns."},{"src":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/screenshot-4.png?rev=3629398","caption":"Fine-grained styling controls for colors, borders, spacing and typography."},{"src":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/screenshot-5.png?rev=3652062","caption":"Import Data \u2014 build a table straight from a CSV or Excel file, with a preview before you import."},{"src":"https:\/\/ps.w.org\/tabilo-table-builder-block\/assets\/screenshot-6.png?rev=3663318","caption":"External Source \u2014 build a table from a Google Sheet or a file on the web, and keep it in sync."}],"raw_content":"<!--section=description-->\n<p><strong>Tabilo<\/strong> is a flexible, native <strong>table builder block for the WordPress block editor (Gutenberg)<\/strong>. Create beautiful <strong>pricing tables, comparison tables, data tables, booking tables<\/strong> and more \u2014 right inside the editor, with a live preview and zero shortcodes.<\/p>\n\n<p>Unlike traditional WordPress table plugins that lock you into plain text cells, Tabilo lets you insert <strong>any Gutenberg block inside a table cell<\/strong> \u2014 headings, paragraphs, images, buttons, lists, icons, star ratings, and even other blocks. If you can build it with blocks, you can put it in a Tabilo table.<\/p>\n\n<p>Start fast with <strong>40+ pre-designed table patterns<\/strong>, then customize colors, borders, spacing, and typography visually \u2014 no code required.<\/p>\n\n<p>Already have the data? Import a <strong>CSV or Excel file<\/strong>, or paste a <strong>Google Sheets link<\/strong> and pull it straight in. Tabilo works out what each column holds, so a column of picture addresses becomes real images and a column of scores becomes star ratings \u2014 not a wall of text. And if the data keeps changing, switch on <strong>live sync<\/strong> and the published table refreshes itself in the background.<\/p>\n\n<h4>Why choose Tabilo?<\/h4>\n\n<ul>\n<li><strong>Any content, any cell<\/strong> \u2013 insert any block into table cells for unlimited layouts.<\/li>\n<li><strong>Made for the block editor<\/strong> \u2013 a true native block, not an iframe or shortcode.<\/li>\n<li><strong>Beginner friendly<\/strong> \u2013 build a table visually with columns, rows, header and footer toggles.<\/li>\n<li><strong>Bring your own data<\/strong> \u2013 import a spreadsheet or a Google Sheet, and keep the table in sync with it.<\/li>\n<li><strong>Designer ready<\/strong> \u2013 fine-grained control over colors, borders, radius, padding and spacing.<\/li>\n<li><strong>Lightweight &amp; fast<\/strong> \u2013 no jQuery, no bloat, clean semantic HTML output.<\/li>\n<li><strong>Translation ready<\/strong> \u2013 fully internationalized and RTL friendly.<\/li>\n<\/ul>\n\n<h3>Key Features<\/h3>\n\n<ul>\n<li><strong>Flexible content<\/strong> \u2013 add any Gutenberg block (text, images, buttons, icons, ratings\u2026) inside cells.<\/li>\n<li><strong>Visual table builder<\/strong> \u2013 set columns and rows, then edit directly in the editor.<\/li>\n<li><strong>Import from CSV &amp; Excel<\/strong> \u2013 drop in a spreadsheet and the table is built for you, with a preview first.<\/li>\n<li><strong>Import from a web address<\/strong> \u2013 paste a Google Sheets link or a direct link to a .csv, .tsv or .xlsx file and fetch the data straight into a table.<\/li>\n<li><strong>Live sync<\/strong> \u2013 keep a table connected to its source and let it refresh itself hourly, every six hours or daily, so published tables stay current without re-importing.<\/li>\n<li><strong>Smart columns<\/strong> \u2013 a column of picture addresses becomes real images, a column of links becomes clickable links, and a column of scores becomes star ratings. Detected for you, and changeable per column before you import.<\/li>\n<li><strong>Header &amp; footer sections<\/strong> \u2013 optional table header and footer with independent styling.<\/li>\n<li><strong>Sticky header<\/strong> \u2013 keep column names visible while visitors scroll long tables, with a top offset control.<\/li>\n<li><strong>Fixed or auto layout<\/strong> \u2013 switch between fixed-width and content-based column sizing.<\/li>\n<li><strong>Responsive tables<\/strong> \u2013 horizontal-scroll mode with an optional scroll hint, or Stacked Card mode that turns each row into a labelled card on small screens.<\/li>\n<li><strong>Per-column colors<\/strong> \u2013 give any header or footer column its own text and background color.<\/li>\n<li><strong>Block styles<\/strong> \u2013 Default, Striped, and Separated styles out of the box.<\/li>\n<li><strong>Full styling controls<\/strong> \u2013 table, row, cell, header and footer colors, backgrounds, per-side borders, border radius, padding, border spacing and font sizes.<\/li>\n<li><strong>40+ ready-made patterns<\/strong> \u2013 pricing, comparison, data and booking table designs to start in one click.<\/li>\n<li><strong>Bonus native blocks<\/strong> \u2013 a <strong>Star Rating<\/strong> block and an <strong>SVG Icon<\/strong> block (icon library + custom SVG) to enrich your tables.<\/li>\n<li><strong>Own block category<\/strong> \u2013 all Tabilo blocks are grouped under a dedicated \u201cTabilo\u201d category in the inserter.<\/li>\n<\/ul>\n\n<h3>Included Blocks<\/h3>\n\n<ul>\n<li><strong>Table Builder<\/strong> \u2013 the core flexible table block.<\/li>\n<li><strong>Table Row<\/strong> &amp; <strong>Table Cell<\/strong> \u2013 structural blocks with their own color and border controls.<\/li>\n<li><strong>Star Rating<\/strong> \u2013 display ratings with an optional numeric value.<\/li>\n<li><strong>Icon<\/strong> \u2013 insert SVGs from the built-in library or paste your own custom SVG.<\/li>\n<\/ul>\n\n<h3>Ready-Made Table Patterns<\/h3>\n\n<p>Kickstart your layout with professionally designed patterns:<\/p>\n\n<ul>\n<li><strong>Pricing tables<\/strong> \u2013 19 designs for plans, subscriptions and hosting.<\/li>\n<li><strong>Comparison tables<\/strong> \u2013 14 designs for products, phones, laptops and features.<\/li>\n<li><strong>Data tables<\/strong> \u2013 7 designs for sports standings, food menus, listings and more.<\/li>\n<li><strong>Booking tables<\/strong> \u2013 3 designs for schedules and reservations.<\/li>\n<\/ul>\n\n<h3>Perfect For<\/h3>\n\n<ul>\n<li>Pricing and subscription tables<\/li>\n<li>Product and feature comparison tables<\/li>\n<li>Specification and data tables<\/li>\n<li>Pros and cons tables<\/li>\n<li>Booking, schedule and menu tables<\/li>\n<li>Product catalogues built from a spreadsheet, pictures and all<\/li>\n<li>Stock levels, price lists and any data that changes on its own<\/li>\n<li>Any content that needs a clean, structured, tabular layout<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>Tabilo can build a table from a spreadsheet at a web address you paste in. When you do that, and only then, your site makes a request from your own server to the address you entered and shows you the data it returns. Nothing is sent to the plugin author at any point, and no information about you, your site or your visitors is transmitted.<\/p>\n\n<p><strong>Google Sheets<\/strong><\/p>\n\n<p>When the address you paste is a Google Sheets link, the plugin rewrites it into Google's own CSV export address on docs.google.com and requests that instead. This happens only when you paste a Google Sheets link and press <strong>Fetch Data<\/strong>, or when a table you have set to live sync refreshes itself.<\/p>\n\n<p>What is sent: the sheet address you pasted, and nothing else.<\/p>\n\n<p>This service is provided by Google. Terms of service: https:\/\/policies.google.com\/terms \u2014 Privacy policy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p><strong>Other addresses<\/strong><\/p>\n\n<p>For any other address, the plugin requests exactly the address you entered \u2014 nothing is rewritten.<\/p>\n\n<p><strong>Live sync<\/strong><\/p>\n\n<p>If you switch a table to live sync, your site repeats that same request on the schedule you choose (hourly, every six hours, or daily) using WordPress's built-in scheduler. The request is made in the background: your visitors never wait for it, and a page view never triggers an outbound request of its own. You can turn sync off or disconnect the source at any time from the block's <strong>Data Source<\/strong> panel.<\/p>\n\n<p><strong>Picture addresses inside your data<\/strong><\/p>\n\n<p>When an imported column holds picture addresses, your site makes one short request per column to ask the host what kind of file it serves, so the column can be recognised as images. If you switch on <strong>Copy pictures into the media library<\/strong>, your site then downloads those pictures and stores them as attachments. Left off \u2014 the default \u2014 the pictures are simply displayed from wherever they already live, and your visitors' browsers load them from that host.<\/p>\n\n<p><strong>Limits<\/strong><\/p>\n\n<p>Requests are restricted to http and https addresses, to two megabytes per data file and five megabytes per picture, and to addresses outside your own private network. Fetched data is only read and displayed; it is never executed, and nothing is written to your server unless you explicitly ask for pictures to be copied into the media library.<\/p>\n\n<!--section=installation-->\n<p><strong>From your WordPress Dashboard:<\/strong><\/p>\n\n<ol>\n<li>Go to <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Search for <strong>\u201cTabilo\u201d<\/strong>.<\/li>\n<li>Click <strong>Install Now<\/strong>, then <strong>Activate<\/strong>.<\/li>\n<\/ol>\n\n<p><strong>Manual installation:<\/strong><\/p>\n\n<ol>\n<li>Download the plugin ZIP file.<\/li>\n<li>Upload it via <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Activate the plugin.<\/li>\n<\/ol>\n\n<p><strong>How to use:<\/strong><\/p>\n\n<ol>\n<li>Create or edit a post or page.<\/li>\n<li>Click the <strong>\u201c+\u201d<\/strong> inserter and search for <strong>\u201cTable Builder\u201d<\/strong> (or open the <strong>Tabilo<\/strong> category).<\/li>\n<li>Choose a <strong>pre-designed pattern<\/strong>, select <strong>Start blank<\/strong> to build your own, click <strong>Import Data<\/strong> to build the table from a CSV or Excel file, or click <strong>External Source<\/strong> to build it from a Google Sheet or a file on the web.<\/li>\n<li>Add columns, rows, a header\/footer, then style it from the block sidebar.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20tabilo%3F\"><h3>What is Tabilo?<\/h3><\/dt>\n<dd><p>Tabilo is a native table builder block for the WordPress block editor (Gutenberg) that lets you create responsive pricing, comparison and data tables without shortcodes or a page builder.<\/p><\/dd>\n<dt id=\"can%20i%20add%20any%20type%20of%20content%20to%20table%20cells%3F\"><h3>Can I add any type of content to table cells?<\/h3><\/dt>\n<dd><p>Yes. Tabilo lets you insert any Gutenberg block inside a cell \u2014 text, images, buttons, lists, icons, star ratings and even other blocks.<\/p><\/dd>\n<dt id=\"do%20i%20need%20to%20know%20how%20to%20code%3F\"><h3>Do I need to know how to code?<\/h3><\/dt>\n<dd><p>No. Everything is built and styled visually from the block editor. No HTML, CSS or shortcodes are required.<\/p><\/dd>\n<dt id=\"can%20i%20import%20a%20spreadsheet%3F\"><h3>Can I import a spreadsheet?<\/h3><\/dt>\n<dd><p>Yes. Click <strong>Import Data<\/strong> on the block's start screen and drop in a CSV or Excel file (.csv, .tsv, .xlsx, .xlsm). You will see a preview of the data, choose whether the first row is the header and the last row is the footer, and then the table is built for you. A file you upload is read entirely in your browser \u2014 it is never sent to your site or anywhere else.<\/p><\/dd>\n<dt id=\"can%20i%20build%20a%20table%20from%20a%20google%20sheet%20or%20a%20file%20on%20the%20web%3F\"><h3>Can I build a table from a Google Sheet or a file on the web?<\/h3><\/dt>\n<dd><p>Yes. Click <strong>External Source<\/strong> on the block's start screen, paste the address, and press <strong>Fetch Data<\/strong>. Google Sheets links and direct links to <code>.csv<\/code>, <code>.tsv<\/code> and <code>.xlsx<\/code> files all work, and you get the same preview and header\/footer options as an uploaded file. Because browsers cannot read those addresses directly, your own server fetches the data \u2014 see the <strong>External services<\/strong> section above for exactly what is sent.<\/p><\/dd>\n<dt id=\"does%20the%20google%20sheet%20have%20to%20be%20public%3F\"><h3>Does the Google Sheet have to be public?<\/h3><\/dt>\n<dd><p>Yes. The sheet must be shared with <strong>Anyone with the link<\/strong>, or published to the web via <strong>File \u2192 Share \u2192 Publish to web<\/strong>. A private sheet returns a sign-in page rather than data, and Tabilo will tell you so. If you cannot share the sheet, download it as CSV and use <strong>Import Data<\/strong> instead.<\/p><\/dd>\n<dt id=\"can%20a%20table%20update%20itself%20when%20the%20source%20changes%3F\"><h3>Can a table update itself when the source changes?<\/h3><\/dt>\n<dd><p>Yes. When you import from an address, set <strong>Keep in sync<\/strong> to <strong>Live<\/strong> and choose how often it should refresh. WordPress re-reads the source in the background on that schedule, so your visitors never wait for it. If the source is unreachable the table keeps showing the last data that was read successfully \u2014 it never goes blank. Cell content is then managed by the source and locked in the editor; your layout, colours and styling stay fully editable. Use <strong>Disconnect<\/strong> in the <strong>Data Source<\/strong> panel to turn a synced table back into an ordinary one, keeping the rows as they are.<\/p>\n\n<p>Every column type follows the source on every refresh \u2014 text, images, links and star ratings alike.<\/p><\/dd>\n<dt id=\"my%20spreadsheet%20has%20a%20column%20of%20image%20urls.%20will%20they%20become%20real%20images%3F\"><h3>My spreadsheet has a column of image URLs. Will they become real images?<\/h3><\/dt>\n<dd><p>Yes. Tabilo works out what each column holds and turns a column of picture addresses into proper image blocks rather than printing the address as text. It recognises them from the column name, the file extension, and \u2014 for the many picture addresses that have no extension at all, such as Unsplash or Cloudinary links \u2014 by asking the server what the file actually is. Every column's type is shown above the preview and you can change any of them before importing.<\/p>\n\n<p>By default the pictures load from where they already live, which is instant and means a synced table follows its source. Switch on <strong>Copy pictures into the media library<\/strong> if you would rather store copies on your own site.<\/p><\/dd>\n<dt id=\"can%20other%20columns%20become%20blocks%20too%3F\"><h3>Can other columns become blocks too?<\/h3><\/dt>\n<dd><p>Yes. A column of web addresses becomes clickable links, and a column of scores from 0 to 5 becomes Star Rating blocks. As with images, the guess is shown before you import and you can override it per column.<\/p><\/dd>\n<dt id=\"are%20the%20tables%20responsive%3F\"><h3>Are the tables responsive?<\/h3><\/dt>\n<dd><p>Yes. Choose Horizontal Scroll to keep the table intact with an optional on-screen scroll hint, or Stacked Card to turn each row into a card below 768px \u2014 every cell is labelled with its column header, and you control how the cells and their labels are arranged. More responsive modes are on the roadmap.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20the%20table%20design%3F\"><h3>Can I customize the table design?<\/h3><\/dt>\n<dd><p>Absolutely. You get comprehensive controls for colors, backgrounds, per-side borders, border radius, padding, border spacing and font sizes, plus Default, Striped and Separated block styles. Header and footer columns can also be colored one by one \u2014 handy for highlighting a recommended pricing plan.<\/p><\/dd>\n<dt id=\"does%20tabilo%20include%20ready-made%20templates%3F\"><h3>Does Tabilo include ready-made templates?<\/h3><\/dt>\n<dd><p>Yes. It ships with 40+ pre-designed patterns for pricing, comparison, data and booking tables that you can insert and edit in one click.<\/p><\/dd>\n<dt id=\"will%20it%20work%20with%20my%20theme%3F\"><h3>Will it work with my theme?<\/h3><\/dt>\n<dd><p>Tabilo follows WordPress block standards and works with any properly coded block or classic theme that supports the block editor.<\/p><\/dd>\n<dt id=\"does%20it%20slow%20down%20my%20site%3F\"><h3>Does it slow down my site?<\/h3><\/dt>\n<dd><p>No. Tabilo is lightweight, loads no jQuery, and outputs clean semantic HTML, so your tables stay fast.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.3.0<\/h4>\n\n<ul>\n<li>New: <strong>Redesigned Tabilo dashboard<\/strong> \u2013 Settings \u2192 Tabilo is now five tabs instead of one page: Overview, Patterns, Blocks, Import data and Settings.<\/li>\n<li>New: <strong>Patterns tab<\/strong> \u2013 every bundled pattern, grouped by category. Pick one and it opens the block editor with the pattern picker already filtered to it.<\/li>\n<li>New: <strong>Blocks tab<\/strong> \u2013 what each of the five blocks does, whether it registered correctly, and which block styles it ships with.<\/li>\n<li>New: <strong>Import data tab<\/strong> \u2013 a <strong>Connected sources<\/strong> panel lists every table that's linked to a spreadsheet, with its sync mode (manual or live), when it was last fetched, and whether the last refresh failed.<\/li>\n<li>New: <strong>Settings tab<\/strong> \u2013 set the default refresh interval for new live-synced tables, choose whether imported pictures are copied into the media library by default, and opt in to clearing Tabilo's cached data and settings when the plugin is deleted. Includes on-demand buttons to clear the cache or rescan your content for tables.<\/li>\n<li>New: <strong>\"New table\", \"Upload a file\" and \"Link a Sheet\"<\/strong> on the dashboard now open a new page with the Table Builder block already inserted and the right picker open, instead of a blank editor.<\/li>\n<li>New: <strong>External Source<\/strong> \u2013 a new button on the block's start screen opens the import window on a <strong>From URL<\/strong> tab. Paste a Google Sheets link or a direct link to a <code>.csv<\/code>, <code>.tsv<\/code> or <code>.xlsx<\/code> file, press <strong>Fetch Data<\/strong>, and review the same preview you get for an uploaded file.<\/li>\n<li>New: <strong>Google Sheets support<\/strong> \u2013 ordinary share links and published-to-web links both work, and the tab you were looking at is the tab that gets imported. The sheet must be shared publicly or published to the web.<\/li>\n<li>New: <strong>Live sync<\/strong> \u2013 keep a table connected to its source and let it refresh itself hourly, every six hours or daily. Refreshes run in the background on WordPress's scheduler, so a page view never waits on the source, and the last good data keeps showing if the source is unreachable.<\/li>\n<li>New: <strong>Data Source panel<\/strong> \u2013 see the connected address and when it was last read, change the sync mode or interval, refresh on demand, or disconnect and keep the rows as ordinary editable content.<\/li>\n<li>New: <strong>Smart columns<\/strong> \u2013 imported columns are no longer all plain text. A column of picture addresses becomes real image blocks, a column of links becomes clickable links, and a column of scores becomes Star Rating blocks. Every column's type is shown above the import preview and can be changed before you import.<\/li>\n<li>New: <strong>Picture detection that works on modern addresses<\/strong> \u2013 many image links carry no file extension (Unsplash, Cloudinary, Gravatar and similar). Tabilo asks the host what the file actually is rather than guessing from the address, so those columns are recognised too.<\/li>\n<li>New: <strong>Copy pictures into the media library<\/strong> \u2013 an optional step at import time. Left off, pictures load from where they already live, which keeps a synced table following its source.<\/li>\n<li>Improvement: <strong>Tables in your content<\/strong> now shows each table's real state \u2013 Live sync on, Imported data or Static table \u2013 and how many tables are on a single page, not just that one is.<\/li>\n<li>Improvement: every column type now follows the source on a scheduled refresh, star ratings included \u2014 the stars are redrawn on the server from the same artwork the editor uses.<\/li>\n<li>Fix: importing from a URL now defaults <strong>Keep in sync<\/strong> to <strong>Manual \u2014 refresh when I ask<\/strong> instead of <strong>Off \u2014 import once<\/strong>, so a pasted link is kept and shows up in Connected sources. Previously the address was discarded the moment the table was built unless you changed the dropdown yourself.<\/li>\n<li>Note: this version makes outgoing requests to addresses you supply. See the <strong>External services<\/strong> section of this readme for exactly what is sent and when.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>New: <strong>Import Data<\/strong> \u2013 a new button on the block's start screen opens an import window. Drag in a <strong>CSV<\/strong> or <strong>Excel<\/strong> file (or pick one from your computer) and the table is built from it \u2014 no copying and pasting cell by cell.<\/li>\n<li>New: <strong>CSV import<\/strong> \u2013 quoted fields, commas and line breaks inside values, and files saved by Excel or Numbers all read correctly. The separator (comma, semicolon, tab or pipe) is detected for you and can be changed by hand.<\/li>\n<li>New: <strong>Excel import<\/strong> \u2013 reads <code>.xlsx<\/code> and <code>.xlsm<\/code> workbooks, including dates, shared text and multi-sheet files. Pick which sheet to import from a dropdown.<\/li>\n<li>New: <strong>Import preview<\/strong> \u2013 see the first rows before anything is created, and choose whether the first row becomes the table header and the last row the footer.<\/li>\n<li>New: <strong>Redesigned Tabilo dashboard<\/strong> \u2013 Settings \u2192 Tabilo now shows a getting-started tour, quick-start steps, the blocks you can use, the settings worth knowing, and a list of the posts and pages that already contain a table.<\/li>\n<li>Fix: adding or deleting a column no longer clears the text you typed in the header and footer cells.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>New: <strong>Stacked Card responsive mode<\/strong> \u2013 below 768px each row becomes a card, with the header text repeated as a label on every cell. Choose a <strong>Row Direction<\/strong> (cells stacked vertically or side by side) and a <strong>Cell Direction<\/strong> (label beside the value or above it).<\/li>\n<li>New: <strong>Sticky header<\/strong> \u2013 keep the header row in view while visitors scroll a long table, with an optional top offset for themes with a fixed admin or site header.<\/li>\n<li>New: <strong>Per-column header and footer colors<\/strong> \u2013 the Table Head and Table Footer panels now list one collapsible group per column, each with its own text and background color.<\/li>\n<li>New: <strong>Settings \u2192 Tabilo admin page<\/strong> \u2013 plugin info, a quick-start guide, recommendations and links to demos, tutorials and support.<\/li>\n<li>Improvement: clearer labelling in the block sidebar for the responsive and color controls.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Build responsive pricing, comparison &amp; data tables in the WordPress block editor.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/346245","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=346245"}],"author":[{"embeddable":true,"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/binsaifullah"}],"wp:attachment":[{"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=346245"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=346245"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=346245"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=346245"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=346245"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/sah.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=346245"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}