September 7, 2015

How to create an online portfolio

In 45 easy steps.

  1. Ponder setting up a portfolio using your own simple gallery code.
  2. Consider: The portfolio is for a job requiring WordPress expertise, so why not use WordPress?
  3. Search the web for portfolio gallery themes.
  4. Search the web for free portfolio gallery themes.
  5. Look over several dozen screenshots and descriptions. View five or six demo sites, some of which turn out not to be free.
  6. View the demo site for a theme called “Touchfolio” that is:
    1. minimalist and clean
    2. responsive
    3. touch-enabled
    4. and, yes, free.
  7. Use your web host’s Softaculous installer system to set up a fresh instance of WordPress 4.3 and a new database.
  8. Download Touchfolio.
  9. Watch the Touchfolio installation/configuration video, an annotated screencast of the complete setup procedure.
  10. Install Touchfolio, activate the theme, and start configuring the site.
  11. Set up your first project gallery. Save the gallery configuration. The gallery configuration doesn’t save.
  12. Try setting it up again. It still doesn’t save.
  13. Huh.
  14. Search the web for an answer. Find the Touchfolio support forum, which contains multiple posts stating that it doesn’t create galleries in Wordpress 4.3.
  15. Go back to the Touchfolio demo site, view source, and ascertain that the author runs it on WordPress 3.3.2.
  16. Delete the WordPress 4.3 installation and the database. (Some WordPress releases change the database structure, so an older release is likely to choke on a newer database.)
  17. Download the WordPress 3.3.2 package from the Release Archives.
  18. Manually install the files on the web server.
  19. Set up the database using your web host’s cPanel system and make note of the access details.
  20. Hit the site to initialize WordPress.
  21. Discover that it can’t create wp-config.php, probably due to file permissions.
  22. Create wp-config.php yourself and copy in the details that the installer interface helpfully provided.
  23. Finish initializing.
  24. Log into the WordPress admin interface.
  25. The left-column navigation is there, but the rest of the page is blank, no matter what you click.
  26. For crying out loud.
  27. Search the web to see if anyone else has ever seen this.
  28. Find this exact problem posted on Stack Overflow, complete with a screenshot and a handful of identical solutions, including the path, filename, line number, and object reference to change.
  29. Edit the PHP. It works! Okay, back in business.
  30. Install the Touchfolio theme. Activate it.
  31. Fatal PHP error. The theme is calling wp_get_theme(), which is undefined.
  32. Search the entire WordPress 3.3.2 codebase with Sublime Text. Indeed, wp_get_theme() isn’t there at all.
  33. Search the web for wp_get_theme(). The WordPress Codex says this function was first implemented in Wordpress 3.4.
  34. W—what the—how is the Touchfolio demo site even possibly working with WordPress 3.3.2? Maybe the author put the wp_get_theme() call in the downloadable package, but left the demo running an older version of the theme?
  35. Oh well, whatever, never mind. Delete the WordPress 3.3.2 files, download 3.4.2 from the Release Archives, and install. Desperately suppress the thought that you’ll be installing version after version until, if ever, you find one that works.
  36. Initialize. It kindly updates the 3.3.2 database, but again it can’t create the wp_config.php file. Fine—create a new one again.
  37. Install Touchfolio.
  38. Wait, no, now it says it can’t create the Touchfolio theme files due to permission problems.
  39. Check the theme directory on the server. Yup, nothing new got installed.
  40. chmod 777 the whole frickin’ installation, just to be sure.
    Note: We do not do this to mission-critical systems. This is an expedient fix to a hidden, short-use, ultra-low-traffic site that nobody else’s livelihood is depending on.
  41. Install Touchfolio again. It works.
  42. But…does it?
  43. Watch the configuration video again and follow the steps to create a gallery.
  44. It works.
  45. Make the portfolio.


    1. In the portfolio, note the use of PHP, Unix, debugging skills, etc. so that you satisfy the requirements of 51 other jobs you’re not event remotely interested in but that have that particular combination of skills, in order to make yourself that much more competitive for the job you ARE applying for.

    2. In the job interview, note the skill set and that since posting the portfolio, you’ve received 10 other job offers that you’ll be happy to reject if the interviewer can boost the base pay by just 5% to stay competitive with those other offers.

    1. Decide to limit access with the Restrict Site Access plugin.
    2. Discover that Restrict Site Access requires WordPress 3.5.
    3. Download WordPress 3.5.2 from the Release Archives.
    4. Back up the site.
    5. Carefully replace all but the wp-content directory with the 3.5.2 files.
    6. Cross fingers.
    7. Access wp-admin and initiate database update.
    8. It works.
    9. Set restricted access.