WordPress Custom Fields Restyling

I use Custom Fields a lot, always by means of Enzymes, for managing the code snippets I’m going to comment about.

The Custom Fields section inside the post editing page shows added custom fields in a table whose columns change their width to fit the content, but the rows don’t change their height. I do not like that design: a definition list is much better than a table there. The key is the definition term and the value is the definition data.

Here are some pictures about the results of my experiment. The first row is my restyling, and the second row is how the same data appear in the usual design. There are three custom fields already added to this post: snippet1, snippet2, and snippet3; in the right picture, a new google custom field is going to be added

customfields1.png , customfields2.png , customfieldsnew.png

customfieldsold.png

Features of my restyling
  • added fields and the new field are evenly represented by the classical definition list style, where definition data is indented below the definition term; this provides a powerful clue for identifying the key / value roles, thus making all the labels superfluous
  • space usage is smarter; the key spans all the available width; the value almost all of it, and its height is greater than usual too, thus allowing for a convenient inspection, for viewing and editing purposes; the vertical scrollbar is much more useful than the horizontal one
  • by clicking its key, a custom field gets expanded, thus showing its value and its two editing buttons, while the rest of the custom fields gets collapsed; showing only one custom field at a time helps keeping user’s attention focused
  • the selection box for chosing an already known-to-the-system key is replaced by a list of buttons, located above the key field; by clicking any of them, the key gets copied into the key field, so that the user can leave it alone or change it, if needed; the overall design is more coherent

How to reset a WordPress password

I’ve found this method today, and it works very well. I’ve just used it to reset my admin access password to a localhost installation. In fact it’s impossible to recover a password by means of an email if your system cannot send emails. This method is also very easy, and without email delivery delays in between.

  1. Open phpMyAdmin (a different MySQL web access tool should be fine, too)
  2. You should see the welcome page. Find the Database selection box and select your WordPress database
  3. You should see a list of tables, many with a common prefix, organized as links on the left and as rows on the right. Click the link wp_users (instead of wp you’ll use the prefix you chose when installing WordPress, if different)
  4. You should see the wp_users table structure, but you’re looking for its contents, so find the Browse link and click it
  5. You shoud see the wp_users table contents, one row for each registered user. Select the one with the admin value under the user_login column header and click on the Change link (with a pen icon, right below the last row)
  6. You should see a classical data entry form. In the row which has the user_pass value under the Field column header, select the MD5 value from the selection box under the Function column header, and write your new password in the text field under the Value column header. Then click Go
  7. Close phpMyAdmin
  8. Done

An enzyme for transcluding a web page

2018-06-14: This post was very different when I first published it, many years ago. Time goes by, and IFRAME is no longer that good an option when websites can specify new headers like X-Frame-Options. Meanwhile, I also had to deactivate my Enzymes plugin and only keep my newer Nzymes plugin active. Confronted with the alternative to leave this here as a useless contribution to mankind, I opted for changing the examples while keeping their original spirit instead.

Enzymes Nzymes can be complex PHP scripts, but basic enzymes are also very useful. These allow to transclude some web content into a post. Enzymes Nzymes makes it easy to do it over and over, without having to remember: “how did I do it?”

This is got by the statement {[.show-image()]}:

This is got by the statement {[.show-quote()]}:

show-image:

return "<img src='https://picsum.photos/200/300/?random' />";

show-quote:

$response = file_get_contents('https://random-quote-generator.herokuapp.com/api/quotes/random');
$decoded = json_decode($response, TRUE);
$quote = htmlspecialchars($decoded['quote']);
$author = htmlspecialchars($decoded['author']);
return "<span>$quote (by $author)</span>";

Easy, isn’t it?