WordPress database error: [<div style="clear:both"> </div><div class="queries" style="clear:both; margin_bottom:2px; border: red dotted thin;">Queries made or created this session were<br/>
<ol>
<li>Raw query:
SELECT * FROM wp_options WHERE </li>
<li>Rewritten:
SELECT * FROM wp_options WHERE </li>
<li>With Placeholders:
SELECT * FROM wp_options WHERE </li>
<li>Prepare:
SELECT * FROM wp_options WHERE </li>
</ol>
</div><div style="clear:both; margin_bottom:2px; border: red dotted thin;" class="error_message" style="border-bottom:dotted blue thin;">Error occurred at line 1644 in Function prepare_query. <br/> Error message was: Problem preparing the PDO SQL Statement. Error was: SQLSTATE[HY000]: General error: 1 incomplete input </div><pre>#0 /home/nattaylor/public_html/wordpress/wp-content/db.php(2746): WP_SQLite_DB\PDOEngine->get_error_message()
#1 /home/nattaylor/public_html/wordpress/wp-content/db.php(3484): WP_SQLite_DB\wpsqlitedb->query('...')
#2 /home/nattaylor/public_html/wordpress/wp-content/db.php(2952): WP_SQLite_DB\PDOSQLiteDriver->execute_duplicate_key_update()
#3 /home/nattaylor/public_html/wordpress/wp-content/db.php(1893): WP_SQLite_DB\PDOSQLiteDriver->rewrite_query('...', '...')
#4 /home/nattaylor/public_html/wordpress/wp-content/db.php(1357): WP_SQLite_DB\PDOEngine->execute_insert_query_new('...')
#5 /home/nattaylor/public_html/wordpress/wp-content/db.php(2739): WP_SQLite_DB\PDOEngine->query('...')
#6 /home/nattaylor/public_html/wordpress/wp-includes/option.php(1143): WP_SQLite_DB\wpsqlitedb->query('...')
#7 /home/nattaylor/public_html/wordpress/wp-includes/option.php(2189): add_option('...', 1774228001, '', '...')
#8 /home/nattaylor/public_html/wordpress/wp-includes/option.php(1953): add_network_option(1, '...', 1774228001)
#9 /home/nattaylor/public_html/wordpress/wp-includes/option.php(2680): add_site_option('...', 1774228001)
#10 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-theme.php(2047): set_site_transient('...', Array, 1800)
#11 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-theme.php(1856): WP_Theme->set_pattern_cache(Array)
#12 /home/nattaylor/public_html/wordpress/wp-includes/block-patterns.php(374): WP_Theme->get_block_patterns()
#13 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-hook.php(341): _register_theme_block_patterns('')
#14 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters(NULL, Array)
#15 /home/nattaylor/public_html/wordpress/wp-includes/plugin.php(522): WP_Hook->do_action(Array)
#16 /home/nattaylor/public_html/wordpress/wp-settings.php(742): do_action('...')
#17 /home/nattaylor/public_html/wordpress/wp-config.php(84): require_once('...')
#18 /home/nattaylor/public_html/wordpress/wp-load.php(50): require_once('...')
#19 /home/nattaylor/public_html/wordpress/wp-blog-header.php(13): require_once('...')
#20 /home/nattaylor/public_html/wordpress/index.php(17): require('...')
</pre>] SELECT * FROM wp_options WHERE
WordPress database error: [<div style="clear:both"> </div><div class="queries" style="clear:both; margin_bottom:2px; border: red dotted thin;">Queries made or created this session were<br/>
<ol>
<li>Raw query:
SELECT * FROM wp_options WHERE </li>
<li>Rewritten:
SELECT * FROM wp_options WHERE </li>
<li>With Placeholders:
SELECT * FROM wp_options WHERE </li>
<li>Prepare:
SELECT * FROM wp_options WHERE </li>
</ol>
</div><div style="clear:both; margin_bottom:2px; border: red dotted thin;" class="error_message" style="border-bottom:dotted blue thin;">Error occurred at line 1644 in Function prepare_query. <br/> Error message was: Problem preparing the PDO SQL Statement. Error was: SQLSTATE[HY000]: General error: 1 incomplete input </div><pre>#0 /home/nattaylor/public_html/wordpress/wp-content/db.php(2746): WP_SQLite_DB\PDOEngine->get_error_message()
#1 /home/nattaylor/public_html/wordpress/wp-content/db.php(3484): WP_SQLite_DB\wpsqlitedb->query('...')
#2 /home/nattaylor/public_html/wordpress/wp-content/db.php(2952): WP_SQLite_DB\PDOSQLiteDriver->execute_duplicate_key_update()
#3 /home/nattaylor/public_html/wordpress/wp-content/db.php(1893): WP_SQLite_DB\PDOSQLiteDriver->rewrite_query('...', '...')
#4 /home/nattaylor/public_html/wordpress/wp-content/db.php(1357): WP_SQLite_DB\PDOEngine->execute_insert_query_new('...')
#5 /home/nattaylor/public_html/wordpress/wp-content/db.php(2739): WP_SQLite_DB\PDOEngine->query('...')
#6 /home/nattaylor/public_html/wordpress/wp-includes/option.php(1143): WP_SQLite_DB\wpsqlitedb->query('...')
#7 /home/nattaylor/public_html/wordpress/wp-includes/option.php(2189): add_option('...', Array, '', '...')
#8 /home/nattaylor/public_html/wordpress/wp-includes/option.php(1953): add_network_option(1, '...', Array)
#9 /home/nattaylor/public_html/wordpress/wp-includes/option.php(2682): add_site_option('...', Array)
#10 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-theme.php(2047): set_site_transient('...', Array, 1800)
#11 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-theme.php(1856): WP_Theme->set_pattern_cache(Array)
#12 /home/nattaylor/public_html/wordpress/wp-includes/block-patterns.php(374): WP_Theme->get_block_patterns()
#13 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-hook.php(341): _register_theme_block_patterns('')
#14 /home/nattaylor/public_html/wordpress/wp-includes/class-wp-hook.php(365): WP_Hook->apply_filters(NULL, Array)
#15 /home/nattaylor/public_html/wordpress/wp-includes/plugin.php(522): WP_Hook->do_action(Array)
#16 /home/nattaylor/public_html/wordpress/wp-settings.php(742): do_action('...')
#17 /home/nattaylor/public_html/wordpress/wp-config.php(84): require_once('...')
#18 /home/nattaylor/public_html/wordpress/wp-load.php(50): require_once('...')
#19 /home/nattaylor/public_html/wordpress/wp-blog-header.php(13): require_once('...')
#20 /home/nattaylor/public_html/wordpress/index.php(17): require('...')
</pre>] SELECT * FROM wp_options WHERE
Page Previews by Nat Taylor
Nat Taylor — Blog, AI, Product Management & Tinkering
Page Previews
Published on .
As of today, if you hover over an internal blog post link on my site on a wide screen, a page preview will appear in the right margin as demonstrated below, in order to help you decide whether or not to click.
Page Preview Demo
Caching and simplicity already make page loads on my site pretty fast (50-200ms,) but I always liked the way that Wikipedia designed page previews. Still, I thought the implementation was too complicated to warrant. Then today I saw an alternative implementation on jefftk.com that used iframes, which is both simple and fairly fast.
The implementation does a few interesting things:
Setting sandbox="allow-same-origin" restricts the iframe from loading any potentially slow scripts (although I control this anyway) yet still allows the embedding page to modify the contentDocument
The site header within the iframe is hidden by iframe.contentDocument.querySelector("foo").style.display="none"
The iframe slides in from the right, thanks to a bit of CSS animation: slide 0.5s forwards; and the associated keyframe @keyframes slide { to { right: 0; } }
The mouseoever event is bound only to certain links thanks to a attribute prefix selector document.querySelectorAll("a[href^='https://nattaylor.com/blog']")
The previews are delayed by 250ms in case you are sliding your most down a list of links, and linger for 3s so you can move your mouse over to keep the preview in place and click if, if you wish.