Skip to content
Wordpress theme for elegant web publishing without logging in
PHP CSS JavaScript HTML Hack
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore .DS_Store banished! Sep 18, 2016
LICENSE DMLL Support Sep 6, 2019
archive.php Organize as single ZIP Oct 13, 2017
class.truwriter-theme-options.php Theme Options Sep 3, 2019
content.php Parent Theme Changed Dec 13, 2018
functions.php Eliminated 2 Special Page Templats Jun 16, 2019
page-desk.php Theme Options Sep 3, 2019
single.php Theme Options Sep 3, 2019

TRU Writer Wordpress Theme

by Alan Levine or

If this kind of stuff has any value to you, please consider supporting me so I can do more!

Support me on Patreon Support me on via PayPal

What is this?

This Wordpress Theme powers TRU Writer; a site that allows people to publish their writing, including rich media content, without needing to login or understand the backend of Wordpress.

Once installed the TRU Writer theme allows individuals to generate content online using an rich text editor interface. Writers can also add content by cutting and then pasting into the editor from word-processing software such as MS Word or Google Docs, carrying forward most structural formatting (here's an example of a post created by using the copy/paste function (cmd/ctrl + V) from a Word document.

Because it requires no login or CMS knowledge, TRU writer is great for projects where multiple people are contributing or for classroom applications where many individuals need to publish content on the same site. It focuses on the writing rather than Wordpress (not that we do not love you, Wordpress!)

The site invisibly logs in visitors to a special account to make available advanced publication and editing tools, but those individuals will not need to navigate the Wordpress dashboard or login structure (we love dashboards, but hey, not everyone needs to see that mess, right?). The TRU Writer allows individuals to publish anonymously, or under an assumed name, or their own name, or whatever.

The TRU Writer Theme was developed along with the TRU Collector, the TRU Sounder, The Comparator, and the Daily Blank while on a fellowship at Thompson Rivers University--that's why the "TRU" in the theme name.

With Thanks

SPLOTs have no venture capital backers, no IPOs, no real funding at all. But they have been helped along by a few groups worth recognizing with an icon and a link.

The original TRU Writer was developed under a Thompson Rivers University Open Learning Fellowship and further development was supported in part by a Reclaim Hosting Fellowship, an OpenETC grant, Coventry University's Disruptive Media Learning Lab, plus ongoing support by Patreon patrons.

Thompson Rivers University Reclaim Hosting OpenETC Disruptive Media Learning Lab Supporters on Patreon

Examples in Action

Beyond the demo site used as a pre-made import, some places you can see others putting the TRU Writer theme in action include:

And if you make a TRU Writer site, please please pretty please fork this repo to edit this Readme with a link to your new site, et me know via twitter @cogdog, or issues below.

If you have problems, feature suggestions, small bags of gold coin for me, please contact me via the issues area on this repo.

Installing From Reclaim Hosting

If you are wise enough to host your web sites at Reclaim Hosting you have the option of installing a fully functioning site with this theme (a copy of the demo site) including recommended plugins, configured settings and sample content, all done in one click. But wait there is more! With this method of installing your site, future updates to the theme are automatically added to your site.

In your cpanel, under Applications go to All Applications. This theme is available listed under Fratured Applications; just install from there.

Note that unlike other WordPress installs, this one will not preserve your username/password, so be sure to save that information. When it's done, log into your new site and start making it your own.

Installing TRU Writer from Scratch

Using this theme requires a self-hosted--or institutionally hosted (lucky you)-- Wordpress site (the kind that you download from You cannot use this theme on the free "" site. Maybe check out Reclaim Hosting if you need to set up your own hosting space.

The TRU Writer is a child theme based on the free and elegant Radcliffe theme by Anders Noren. Install this theme first from within the Wordpress Dashboard under Appearance -- Themes searching on Radcliffe.

Download the TRU Writer theme (use the green Clone or Download button above) as a ZIP file.

The zip can be uploaded directly to your site via Add Themes in the Wordpress dashboard. Of you run into size upload limits or just prefer going old school like me, unzip the package and ftp the entire folder into your wp-content/themes directory.

To get the TRU Writer working all you need to do is activate the "TRU Writer" theme when it appears in your Wordpress dashboard under Appearance --> Themes.

Updating the TRU Writer Theme (manually)

Note (Dec 11, 2018) If your site's featured images are blank, it's likely because of a change to the parent Radcliffe theme that was automatically updated on your site. An update to TRU Writer version 1.2 or later will fix this issue.

If you have ftp/sftp access to your site (or this can be done in a cpanel file manager), simply upload the new theme files to the wp-content/themes directory that includes the older version theme.

For those that lack direct file upload access or maybe that idea sends shivers down the spine, upload and activate the Easy Theme and Plugin Upgrades plugin -- this will allow you to upload a newer version of a theme as a ZIP archive, the same way you add a theme by uploading.

Setting Up TRU Writer

Now that you've installed TRU Writer and can see the barebones theme staring back at you. It is not very interesting. Yet.

Recommended Plugins for TRU Writer

Note: The newest versions of this theme present dashboard notifications for suggested plugins and one click links to install and/or activate.

While your doing all that uploading, you should know that this theme uses the Reading Time WP plugin to insert those commonplace estimates of reading time -- blame Medium if you hate knowing how long a post might take to read.

Also install and activate the Remove Dashboard Access plugin. This plugin this keeps anyone logged in as the secret user from even seeing the Wordpress dashboard. It also stops someone who is leaving a comment from getting inside the secret user profile and changing your "writer" password, which blows everything up. This plugin is not critical for the Writer to work, it just closes the back door a bit tighter.

In the settings for Remove Dashboard Access plugin, restrict access to Editors and Administrators or just Administrators depending if you will have a moderator user. The default redirect should be for the main URL of the site.

Remove Dashboard Access settings

Demo Content

If you want a site that is not completely empty, you can get one with the content set up on the public demo site.

Install all content by downloading the WordPress export for that site. Running the WordPress Importer (under Tools -- Import) and upload that file when prompted.

You can also get a copy of the Widgets used on that site too. First intall/activate the Widget Importer & Exporter plugin. Download the Writer Widgets data file. Look under the Tools menu for [Widget Importer & Exporter and use the Import Widgets section to upload the data file. Boom! You got Widgets.

Page Setup

This theme has several pages that must be created; each is associated with a specific template that provide it's functionality. Activating the theme should create these all for you when the theme is activated, but if not, create them as described below. You can edit the content of the Write and Desk pages to customize the prompt seen by writers on your site.

If the theme does not do so automatically (and it should) create these Wordpress Pages. You can modify the titles, and add whatever content you want to appear at the top as instructions. As of version 1.8, you can edit the url short name as well.

  • Write -- The page that provides the writing form, see Whatever you include in the body (not required) is added to the top of the form, maybe for extra instructions.e.g. for a site at the page can be published at When you create a Writing Form page, under Page Atributes, select the Template named Writing Pad

  • Desk -- The page that provides users will see first if they must enter an access code to access the writing tool (see below). If no access code is required, it redirects to the page above for the writing form-- like Whatever you include in the body (not required) is added to the top of the form, maybe for a friendly prompt .e.g. for a site at the page might be published at When you create a Writing Form page, under Page Atributes, select the Template named Welcome Desk

Customize Your Menus

The default menus are not what you want (it will add menu items for some pages that users should not see! Wordpress will generate one based on all Pages set up.

In Wordpress Dashboard go to Appearance -> Menus. Create a new menu, and check the location box for "Primary". A typical TRu Writer menu might have an "About Page", the Write page (the form for writing), maybe a Random link, and a set of dropdowns to see pages by category. Here is one example for the site

You can of course, create any menu structure that works for your site- but don't use the default! And hey, if you're being all fancy and don't check the "Primary" box above, remember to go into the "Manage Menus" tab and change it from the default menu to the new awesome menu you just created or all you'll see is the default menu popping up again and again and that will be frustrating. It will list as menu items a bunch of pages that users never should see (e.g. Welcome Desk, Get Edit Link).

Theme Options and Settings

Upon activation the theme will set up a TRU Writer Options link that appears in the black admin bar at the top of your Wordpress Dashboard interface (when logged in), and in the "Appearance" tab on your Wordpress Dashboard.

Click TRU Writer Options to see or change the settings outlined below.

(For extra fun "writer" from here on, in lower case, refers to the person using your site; the person who comes and wants to write something on your awesome Writer site.)

In the TRU Writer Theme, traditional "posts" in Wordpress are renamed "writings," but they still have all the attributes of garden variety Wordpress blog posts. Yum.

Access Options

Leave this field blank if you want any visitor to be able to access the writing form on your TRU Writer site. If that's too open for you, add a code and give it a hint. If you want a quick workaround here, make the site less accessible by not having any links in the homepage menu bar that go to the editor page--no link to the "writer" page, the harder it is to find the editor and post something.

If you want to require users to enter an access code (a very weak password), just enter it in the space provided. Any requests to access the editor and write a post will be sent to a front-page where a writer must enter the passcode. As an example, we have "Lassie" and an equally difficult hint. If you enter in "Lassie," you can see the editor and begin the process of writing a post--but don't actually do that; we haven't set everything up yet! This is a hypothetical situation. For now, decide if you want a passcode. If you do, put it in, with a hint. If you don't, moving on!

The TRU Writer is a moderated publishing theme. And "moderated" means that when a writer submits something, it is not immediately visible to the world. Instead, unless you set it otherwise (more on that below), when a writer submits a post (or "writing" as above) they are automatically set as drafts with a Pending Approval status. You'll get notifications that a submissions has been made to the Email address you enter in the "Notifications Email" option.

In order to make a post (or "writing" as above) visible, a user with the permission status of "Editor" or "Administrator" needs to change the status of the "pending approval" writing to "published (or ignore an "Editor" or "Administrator" could just ignore it forever, such power is theirs).

Pages Setup

Use this area to assign the WordPress Page to be used for the Welcome Desk (where users are sent if there is a required access code) as well as the Page for the writing form. With version 1.8 of TRU Writer, you can now use any name you want for the URL (previously these were forced to be write and desk-- this is no longer required.

If no Pages are found with the correct template, you will see a prompt to create one:

If pages are found (and there might even be more than one, you can select the one you want used for each special page.

Publish Options

You can also choose the "status for new writings" as "publish immediately" and there are no checks and balances--the writing goes right up and is publicly visible immediately. Immediate gratification goes a long way. Note though, that because of the hollow tunnel this might create, this option works best with an access code as described above in place--right Lassie!?

Enter the Default Writing Prompt field to pre-populate the field that visitors write use to compose their work. You can provide a prompt or set up a structure. The editor is now full rich text enabled (including images).

Check the Allow Comments box to add a standard blog comment field at the bottom of all published pieces.

On the editor where people will be composing their madness, the Extra Information Field represents a place for them to add extra information that is not part of the final published item, but that the administrator or editor might need to know, or might have requested. As an example, if you are using this theme to host multiple sections of a class or course of study, you might want to populate the prompt for this field with something like "Include your name and course section" or, "name the dog that best represents you" or "tell me why your writing is so late."

These end up in a Custom Field named "wEditorNotes," which you can view when editing the post in order to publish it (not the "quick edit"; the full monty "edit" please). You will need to open the Screen Options toggle at the top of the Wordpress Dashboard interface and click the box that makes the Custom Fields available. The information is also included in the notification emails announcing a new writing in need of approval.

Under Default Header Image click Set/Change Image to open the Wordpress media editor to choose a default media header image. Drop an image that you wish to be used as a default one if a writer does not include one of their own. The 640 x 300 dimensions are a minimum size, and represent a reasonable aspect ratio for a header image. Larger is better; and the image will be cropped along the middle of the image.

Before choosing the image, be sure to add a caption (we suggest a creative commons license!) as this is what is used to display atop the image when published. Attribute and model attribution! FTW!

Once selected you will see a preview of your default image. Isn't Cadu a nice looking dog?

Disable Show the categories menu on writing form and display if you do not want writers or readers to use/see categories.

If you have not set up any categories, the Default Category for New Writing menu will not do much. You might want to save your options and go edit your Writing Categories. On activation the TRU Writer will pre-create two categories it uses to organize what is submitted and published.

The In Progress category is where all submitted writings go if they need approval. Final Published items have their own ... Published category (big surprise there, eh?). If you want to give your writers a choice of categories to place their work, make sure any categories you create have Published as a parent.

So we suggest making a few pre-set categories for a new site. As an Administrator you can always add new ones at any time. Any text you add as a description will be included on the writing form.

Disable Show the tags entry on writing form and single items displays? if you do not want writers or readers to use/see tags. Likewise use Show the footer entry field on the writing form? to use/disable the footer field writers can append to their works.

Enter in Notification Emails any email addresses who should be notified if new submissions; you have multiple ones if you separate them by a comma. Or leave blank if you never want to know what's going on in your site.

Twitter Settings

You can now choose to disable the Tweet This button on published items In enabled, you can enter one or more hashtags to be used when a published item is shared via the Tweet This button. Do not include "#" and separate multiple ones with commas

Estimated Reading Time Plugin

This plugin is optional, if installed and activated, it will add to all published works an estimate of the reading time based on a crude formula. If it is not installed, you will see the notes shown above. This plugin is available in the Wordpress repository, so it is an easy install.

Author Account Setup

To provide access to the media uploader, this site uses a Wordpress Authoring Role account that is logged into invisibly to your site visitors (for anyone logged in with an Editor or Administrator account, like you this account is not used.). So your site needs an active user with a name of writer and a role of Author.

You can follow the link from the options page to create this account; for an email you can use a fictitious one on your domain; nothing is ever sent to it. We suggest using the strong password that Wordpress suggests. If this site is on a multi-site Wordpress, and the TRU Writer has been used on another site, the writer account already exists, so you need to add it to the site via the Author tools.

** Note: As of version 0.3 of this theme, the password no longer needs to be copied and entered into the options screen.** If you are using a version of the theme that has a password field in the options, maybe it's a good time to update? Otherwise, see an older version of this ReadMe for instructions.

Creative Commons / Rights Settings

Creative Commons licenses or other usage rights (including copyright) can be attached to all works published on your site. Choose Apply one license to all challenges to place the same license on all works (a notice will be displayed on the writing form).

Or you can set the option to Enable users to choose license which places the same menu on the writing form so users can choose a license (or set to All Rights Reserved).

Customize the Write Form

You can customize the field labels and the descriptions of the form where people submit new pieces of writing to a TRU Writer site. On your site navigate to the write form, and activate the Wordpress Customizer from the admin bar.

Look for a special section just below Site Identity to open:

Then from this pane, open "Write Form" tab

And then you will see a series of fields to edit for all form field elements.

For each, you can edit the title/label of the field and the prompt that appears below. As you type in the customizer fields on the left, you will see a live preview on the right.

Customize the Content Layout

You can also customize the content layout. On your site navigate to any content post or page, and activate the Wordpress Customizer from the admin bar. From the TRU Writer pane, open Writer Layout. Here you can choose from the Thin or Medium layout widths (Wide will only affect very large screens).

Customize Heading for Single Page Metadata

A small thing, but a corny heading of "SO IT WAS WRITTEN" was hardwired into the singl post template; this is now something that can be changed in the Customizer. From the TRU Writer pane, open Writer Layout.

Some Complexish Stuff for Nerds, Who Are Awesome

If you want to customize/re-arrange the buttons and controls on the rich text editor used by writers on your site, install TinyMCE Advanced. There is a file in the theme with the typical settings for this plugin I use when I set up these sites.

You can copy and paste from that .txt file into the import field of the settings for TinyMCE Advanced (it's a small chunk of json).

Relatively Cool New Features & Updates

Options for Special Pages No longer are pages for the Welcome Desk (where access codes are entered) and Writer form required to have a set URL; you can create any Page desired for these functions, and set them as the active ones via the theme options. Version 2.0 does some better set up for defaults.

Better Front End Editor Reduced reliance on special pages. The links to the random entry and the one use to get the edit link are no longer needed, and are handle now in the code. These pages should be deleted from your site. On an update to version 1.7 or later, you might have to go to Settings - Permalinks and just click save to update the url rules. Also the method for using the special link to edit an entry is now done in a single click. Much better!

Better Layout and Media Support Customizer options for choosing a this or wider content layout. URLs for media that WordPress natively can oembed will now do so in the front end editor.

Media can also be uploaded by dragging and dropping files onto the editing area. Inside the code the long functions.php is now broken up into more manageable size includes. Small display improvements on single item views. The licensing options updated to be driven by functions, and expanded to include public domain and yikes, even copyright.

Options for Email Address the form field for users entering email addresses can be hidden if not used (this as well will remove and past "request edit link" from published sites. In addition, a new admin option is added to restruct the email addresses allowed to a list of domains.

Under the Hood Fixed bug where choosing no comments hid the Reading Time display, changed options editor for default content to be rich text editor, enabled drag and drop media uploading for front page writing form. Also, URLs that WordPress can autoembed (e.g. YouTube, Twitter, Giphy) will now do so automatically in the editor.

Theme Option to Remove Tweet This Button to enable better GDPR compliance.

Customize the Writing Form Instructions You can now modify all form field labels and descriptions / prompts for the entry fields.

Default Menu On new installs where no menus are defined, the theme generates a simple menu rather than listing all pages

Reading Time Plugin The Estimated Reading Time Plugin is no longer available, so the theme now uses Reading Time WP.

Separate CSS / Functions for Custom Installs Fixed quote bug for captions, and changed writing form so it only displays featured image and intro text for first view of the form (so you can add really long instructions).

Tweet This Button There is a new option so you can have your own hashtags added when someone tweets a published item. Also, twitter card meta data has been added so these tweets have the extended card display that shows the featured image, the site's title, and an excerpt from the item-- example

Options Refreshed, Auto Page Creation, Better Reading Time Display Recoded the theme options so documentation in its own tab. When he theme is activated now, the necessary pages will be created automagically. And if the Estimated reading time plugin is not activated, nothing will be displayed where it normally displays.

Provide an Email, Edit your Work Later A major limitation of the first versions was that authors had no ability to edit their work after publishing (that's what happens when you don't have logins). As of November 2015, authors have a new field where they can enter an email address- if this is provided (it is not required), they will receive via email a special coded URL they can use at anytime to modify their work.

When published, any writing with an email is published with a Get Edit Link button at the bottom which will resend the link to the email associated with it.

Admins Can Get Edit Link for Anybody Even if the author does not provide an email address, in the Wordpress Dashboard interface, editors and admins can click and copy an edit like they can provide directly to a writer (this is added as a side metabox).

You can’t perform that action at this time.