Switching blog content on and off

A while ago I realised that I had a need to be able to turn off particular content on and off, as required, on particular posts and pages. In this case, it was to switch off comments and/or advertisements (they default as being switched on). For example, you may have an “About Me” page on which you may not want people to be able to leave comments.

The solution was quite simple and makes use of the custom fields feature.

First of all, find the code that you need to find switchable within your theme page and add the following before it…

<?php $nocomment=get_post_meta($post->ID,"nocomment",false); ?>
<?php if ($nocomment[0]!="Yes") : ?>

And immediately after it…

<?php endif; ?>

What this does is look for a custom field named “nocomment”. If it exists and doesn’t contain “Yes” then it will execute the code in question. Obviously, you can change the field name as you require – make sure you change the reference in the above code as well.

I have another, titled “noad”, which I then use for turning off advertisements on particularly pages.

Posted by David Artiss

Enterprise Happiness Engineer for the WordPress VIP team at Automattic. Gamer, film lover and general fan of all things Marvel, Star Trek and Star Wars. Failed comedian. Writer for The Big Tech Question. World's Greatest Grandma.

Talk to me!

This site uses Akismet to reduce spam. Learn how your comment data is processed.