{"id":392,"date":"2020-04-22T14:29:43","date_gmt":"2020-04-22T14:29:43","guid":{"rendered":"http:\/\/www.ishygddt.xyz.\/~blog\/?p=392"},"modified":"2022-03-08T19:25:56","modified_gmt":"2022-03-08T19:25:56","slug":"wordpress-plugin-woes","status":"publish","type":"post","link":"http:\/\/www.ishygddt.xyz\/~blog\/2020\/04\/wordpress-plugin-woes","title":{"rendered":"WordPress plugin woes"},"content":{"rendered":"<p>It seems that even a honeymoon period with WordPress was only ever a pipe dream.<\/p>\n<p>This post is partly venting, partly \u201cfield survival guide\u201d for anyone else trying to start up a blog and having to deal with all this\u00a0<em>nonsense<\/em>.<\/p>\n<p>Every one of the pile of plugins I have installed are to\u00a0<strong>fix WordPress\u2019 deficiencies<\/strong>. It\u2019s not a matter of <em>enhancement<\/em>, it\u2019s a matter of <em>treading water<\/em> because, despite everything, WordPress is somehow* <em>still<\/em> the\u00a0\u201cleast worst\u201d option for DIY blogging software: the UX for every solution made in someone\u2019s basement sucks even worse for non-computerists. (If this bar drops any lower, perhaps\u00a0<em>I\u2019ll<\/em> try my hand at clearing it over a summer!)<\/p>\n<aside style=\"border-left: solid 1px; padding-left: 0.75em; margin-left: 0.25em;\">*<em>Why<\/em> is WordPress still the Schelling point, you ask?<\/p>\n<ol>\n<li style=\"list-style-type: none;\">\n<ol>\n<li>Having a business model\u2014a fantastic <a href=\"https:\/\/medium.com\/hive-it\/dogfooding-what-developing-our-own-website-tastes-like-73de256065c7\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">dogfooding<\/a> pipeline for non-computerists to <em>easily<\/em> start up a blog and optionally receive a fraction of ad revenue (in addition to other income streams)\u2014they have the <em>staffing<\/em> to keep their software viable for a layman to use, and a strong, <em>highly<\/em>-aligned incentive to do so.<\/li>\n<li>Unlike e.g., Blogger, you <em>can<\/em> run it entirely on your own hardware with <em>known-good<\/em> copies of both the content <strong>and<\/strong> software backed up to <em>offsite cold storage<\/em>: secure against any unauthorized <a href=\"https:\/\/en.wikipedia.org\/wiki\/Memory_hole\">Moderation<\/a> efforts <em>and<\/em> fully re-deployable at the drop of a hat.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p>It seems to be the lone such intersection.<\/p>\n<\/aside>\n<p>Context behind us, let\u2019s get into it!<\/p>\n<h1>My WordPress Essentials:<\/h1>\n<h2><a href=\"https:\/\/wordpress.org\/themes\/suki\/\">Suki<\/a><\/h2>\n<p><i>Apparently<\/i> the only theme taking less than a freaking\u00a0<strong>half-megabyte<\/strong> of overhead to load a &lt;10kiB article\u2026<\/p>\n<h2><a href=\"https:\/\/wordpress.org\/plugins\/wp-user-avatar\/\">WP User Avatar<\/a><\/h2>\n<p>Because an external \u201ccloud\u201d-based service <a href=\"https:\/\/automattic.com\/privacy\/#sharing-information\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">extensively linked into Social Network panopto<\/a> is <strong>the only OOTB way<\/strong> to set users\u2019 avatars, even those of site Authors\/Editors\/Administrators.<\/p>\n<h2><a href=\"https:\/\/wordpress.org\/plugins\/very-simple-meta-description\/\">Very Simple Meta Description<\/a><\/h2>\n<p>Because the <em>Excerpt<\/em> field wasn\u2019t semantically apparent enough for the WordPress devs to indicate to search engines\u2026?<\/p>\n<h2><a href=\"https:\/\/wordpress.org\/plugins\/classic-editor\/\">Classic Editor<\/a><\/h2>\n<p>Stopping WordPress from <strong>cluttering up the pages\u2019 source with metadata tags<\/strong> reminding the editor software of basic semantic facts it has <em>no excuse<\/em> not to dynamically derive from the HTML\u2014and, in fact, is capable of and will\u00a0<em>gladly<\/em> do\u2014*as part of the process of migrating your content\u00a0<em>to<\/em> it.<\/p>\n<p>(I <em>don\u2019t<\/em> want to have to vacuum a bunch of <em>litter<\/em> out of my content when I do, finally, bail from this platform.)<\/p>\n<h2><a href=\"https:\/\/wordpress.org\/plugins\/wpuntexturize\/\">wpuntexturize<\/a><\/h2>\n<p>Because, out-of-the-box, WordPress will convert all straight quotes into typographical\/\u201ccurly\u201d quotes, with\u00a0<strong>no way to disable<\/strong> its doing so\u2014even when it (often) incorrectly judges which quotes should be curled in which directions.<\/p>\n<h2><a href=\"https:\/\/wordpress.org\/plugins\/display-php-version\/\">Display PHP Version<\/a><\/h2>\n<p>Because this info is, apparently, less essential than the\u00a0<em>vital and topical<\/em> <a href=\"https:\/\/buddypress.org\/2020\/04\/buddypress-5-2-0-maintenance-and-security-release\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">items<\/a> in the news feed that comes OOTB in the Dashboard [\/s]\ud83d\ude44<\/p>\n<h1>why I am irritated<\/h1>\n<p>This irritates me because; while WordPress may (theoretically) have some kind of \u201caccountability\u201d to its users not to create a\u00a0<em>truly awful<\/em> UX, because\u00a0<em>theoretically<\/em> it would be bad for them if users could+did leave en masse; plugin writers are under no such scrutiny. The \u201clower bound\u201d on their social obligation to be Good Actors Per Se is even-less-obviously defined.<\/p>\n<p>Granted, this situation is not as bad as it <a href=\"https:\/\/digwp.com\/2016\/09\/stop-ruining-wp-admin-area\/\" target=\"_blank\" rel=\"noopener noreferrer\">used to be<\/a>, but, even so, unless you\u2019re paying someone, you have no reasonable expectation of QA; much more so if the developer isn\u2019t anything more than some random hobbyist padding his GitHub profile for employers.<\/p>\n<p>I have done my\u00a0<em>level best<\/em> to find the most professional, \u201cSchelling-point\u201d-tier plugins to patch these holes that I can, but, nevertheless, exposing yourself to \/ trusting <span style=\"text-decoration: underline;\">more<\/span> code administrated by <span style=\"text-decoration: underline;\">more<\/span> disparate entities always comes at a risk\/price, and, statistically, you can\u2019t escape paying it forever\u2026<\/p>\n<p>Two (well, perhaps three) instances that I have experienced in the brief quarter I\u2019ve been back into blogging:<\/p>\n<ul>\n<li>The plugin wpuntexturize, after\u00a0<strong>eleven years<\/strong> of doing its <a href=\"https:\/\/web.archive.org\/web\/20140421105250\/knowyourmeme.com\/memes\/you-had-one-job\" target=\"_blank\" rel=\"noopener noreferrer\">sole, well-defined, <em>eponymous<\/em> duty<\/a>\u2014decided on a whim last May to take its baseline behavior: to <span style=\"text-decoration: underline;\">stop WordPress from modifying<\/span> what the user writes, and upgrade it: by <span style=\"text-decoration: underline;\">itself, modifying<\/span> what the user writes.<br \/>\nAnd not provide any Settings entry\/elements to disable this change.<br \/>\n<a href=\"https:\/\/github.com\/coffee2code\/wpuntexturize\/issues\/1#issuecomment-606205308\">I kid you not<\/a>.<\/li>\n<li>A double-microdose of the nonsense described at the earlier-mentioned <em>DigiWP<\/em> article coming directly from both the Suki theme and the WP User Avatar plugin:\n<ul>\n<li>The former begging for reviews via a Dashboard popup; with separate buttons for \u201cI have done so\u201d and \u201cI will not\u201d, which creates a\u00a0<em>horrible<\/em> sense of doubt as to what sorts of illegibly-implemented degradations of service might occur if the user picks the \u201cwrong\u201d answer\u2014or, worse yet, is somehow\u00a0<em>found out for<\/em> lying after picking the \u201cright\u201d one. \ud83d\ude2c<\/li>\n<li>The latter straight-up putting advertisements in the dashboard for some \u201c<small>Free optin form plugin that will increase revenue, increase your email subscribers and keep them engaged with automated and schedule newsletters.<\/small>\u201d \u2013From the plugin I installed\u00a0<em>specifically to escape<\/em> that kind of Molochian\/proto-cyberpunk-dystopian\/<a href=\"https:\/\/www.ribbonfarm.com\/2017\/08\/17\/the-premium-mediocre-life-of-maya-millennial\/\">Millenial<\/a> nonsense. \ud83e\udd26<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p style=\"text-align: center;\">\u058e<br \/>\nWhy is it so hard to build a dang Zen garden online in 2020? \ud83d\ude11<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It seems that even a honeymoon period with WordPress was only ever a pipe dream. This post is partly venting, partly \u201cfield survival guide\u201d for anyone else trying to start up a blog and having to deal with all this\u00a0nonsense. Every one of the pile of plugins I have installed are to\u00a0fix WordPress\u2019 deficiencies. It\u2019s &hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[101],"tags":[19,22,34,37],"class_list":["post-392","post","type-post","status-publish","format-standard","hentry","category-writeups","tag-kvetching","tag-meta","tag-unresolved","tag-wordpress-plugins"],"_links":{"self":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts\/392","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/comments?post=392"}],"version-history":[{"count":2,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts\/392\/revisions"}],"predecessor-version":[{"id":2049,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/posts\/392\/revisions\/2049"}],"wp:attachment":[{"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/media?parent=392"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/categories?post=392"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.ishygddt.xyz\/~blog\/wp-json\/wp\/v2\/tags?post=392"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}