Modified page of categories in WordPress using “Page of Posts”

I hate it when I fail to document.  About a year ago I solved a problem I was having on a client site involving customized pages of categories.  I didn’t document my solution, and not unexpectedly as the months ticked by it slipped out of my brain.  Fast forward to now and I need the solution again.  After too much time spent poking at my own mess, I have the solution again.

My problem was this: I want a page that shows all posts of a particular category, and I want the ability to format those posts into a custom view.  No links in titles, no thumbnails, etc.

Find the Slug of the particular category you want to display.  This is in the Category edit page.  Then create a .PHP file named SLUG_page_template.php.  Populate the file thusly:

{code type=php}
<?php
/*
Template Name: PageOfPosts
*/
get_header(); ?>
<div id=”content” class=”narrowcolumn”>
<?php
if (is_page() ) {
$category = get_post_meta($posts[0]->ID, ‘SLUG’, true);
}
if ($category) {
$cat = get_cat_ID($category);
$paged = (get_query_var(‘paged’)) ? get_query_var(‘paged’) : 1;
$post_per_page = 4; // -1 shows all posts
$do_not_show_stickies = 1; // 0 to show stickies
$args=array(
‘category__in’ => array($cat),
‘orderby’ => ‘date’,
‘order’ => ‘DESC’,
‘paged’ => $paged,
‘posts_per_page’ => $post_per_page,
‘caller_get_posts’ => $do_not_show_stickies
);
$temp = $wp_query; // assign orginal query to temp variable for later use
$wp_query = null;
$wp_query = new WP_Query($args);
if( have_posts() ) :
while ($wp_query->have_posts()) : $wp_query->the_post(); ?>
<div <?php post_class() ?> id=”post-<?php the_ID(); ?>”>
<h2><a href=”<?php the_permalink() ?>” rel=”bookmark” title=”Permanent Link to <?php the_title_attribute(); ?>”><?php the_title(); ?></a></h2>
<small><?php the_time(‘F jS, Y’) ?> <!– by <?php the_author() ?> –></small>
<div class=”entry”>
<?php the_content(‘Read the rest of this entry »’); ?>
</div>
<p class=”postmetadata”><?php the_tags(‘Tags: ‘, ‘, ‘, ‘<br />’); ?> Posted in <?php the_category(‘, ‘) ?> | <?php edit_post_link(‘Edit’, ”, ‘ | ‘); ?> <?php comments_popup_link(‘No Comments »’, ‘1 Comment »’, ‘% Comments »’); ?></p>
</div>
<?php endwhile; ?>
<div class=”navigation”>
<div class=”alignleft”><?php next_posts_link(‘« Older Entries’) ?></div>
<div class=”alignright”><?php previous_posts_link(‘Newer Entries »’) ?></div>
</div>
<?php else : ?>
<h2 class=”center”>Not Found</h2>
<p class=”center”>Sorry, but you are looking for something that isn’t here.</p>
<?php get_search_form(); ?>
<?php endif;
$wp_query = $temp; //reset back to original query
} // if ($category)
?>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
{/code}

On line 9 change SLUG to the appropriate slug of your category.  Update this file to represent the changes you want reflected on the category page.

Determine the cat number of your category.  This is easily done by going into Categories and hovering over View.  Then you can test by going to http://www.yoursite.com/?cat=#  where # represents the category.  Category pages can also be added to menus easily.

Compressor settings for VLC

  • RMS/Peak: 0.00
  • Attack Time: 50.00
  • Release Time: 300.00
  • Threshold Level: -20.00
  • Ratio: 10.00
  • Knee radius: 2.50
  • Makeup Gain: 12.00

Clear the clipboard

Since I’m running remote sessions within a VirtualBoxed OS on my workstation I find I have to do this with some regularity, so I may as well document it here.

cmd /c echo off | clip

 

0 Day Java Exploit. How to disable Java in your browser.

A JRE exploit has reportedly hit the wild. Context here.  Some kind Redditor has posted instructions on disabling the JRE in various browsers:

  • In Firefox : Press Firefox button -> Add-ons, go to Plugins and click the “Disable” button next to anything named “Java”.
  • In Chrome : Type in: “chrome://plugins/” into the address bar (no quotes). Scroll down to Java and click disable.
  • In Opera: Type in “opera:plugins” into the address bar (no quotes). Scroll down to:
    • Java(TM) Platform <click on> Disable.
    • Java Deployment Toolkit <click on> Disable.
  • In Internet Explorer:
    • Disable UAC (if enabled) and restart.
    • Open the Java app in Control Panel.
    • Go to advanced tab.
    • Expand Default Java for browsers.
    • The checkbox next to IE is grayed out.  Select Microsoft Internet Explorer and press spacebar. Click OK.
    • You can re-enable UAC and restart now.

 

“Expanding” a vmdk in VirtualBox

When I created my vmdk for my work virt in VirtualBox I made the mistaken assumption that by “dynamic” they meant the drive size would expand as necessary.  What they really meant was that the drive would expand as necessary within the limits of the initial drive size setting – which I stupidly set to 20 gig.

Expanding your vmdk for VirtualBox is really a misnomer.  You have to create a new one of the size you want and then clone your old one over to it.  It’s a little time consuming, but not hard.  Disclosure:  My host is running Windows 7 64 and my VM is running Windows 7 32.  Why bother?  It’s a security thing.

  1. Shut down your VM (obivously)
  2. Within the VirtualBox Manager, open the Settings for your existing VM, then choose Storage.
  3. Add a hard disk to the controller.  Make it the same type as your current disk, and make it the size you need.
  4. Once it’s created open a command prompt and head to the directory containing vboxmanage.exe – typically in C:\Program Files\Oracle\VirtualBox\
  5. Run the following, altering the paths to match your current and new vmdk files: 
  6. Twiddle thumbs.
  7. Once that’s complete, reopen the VirtualBox Manager and head back to Settings > Storage.  Add an existing hard disk to your controller, choosing your new drive.  Disconnect your original drive.
  8. Fire up your VM, from within it navigate to disk management, and expand away.

 

Mapping drive with a system account

I needed to do this to test Crashplan.  I keep my photos archived on an external drive hooked to, and shared off of, my router.  Since Crashplan’s client runs as a service under the Service account, this was the solution to get it to see these shares.

psexec from the sysinternals suite is required.

Open a command prompt as administrator.

Path to psexec’s location and enter psexec -s cmd.exe.

Mount the drive via its UNC: net use DRIVELETTER: \\server\\folder /persistent:yes

The share will probably show as disconnected.  Click it – it isn’t.  It should also show up for all users of the machine it’s mapped on.

 

(Killing the share requires the same steps, only with net use DRIVELETTER: /delete

Setting a proxy for winhttp on Windows 7

From a CMD:

  1. netsh
  2. winhttp
  3. (show proxy if you want to check current configuration)
  4. set proxy proxyserver:port<local>,*.foo.com

Windows 7 Search Files And Programs

Rebuilt my laptop thanks to lazily allowing a rootkit to hit it and discovered that the Windows 7 Search Files and Programs function wouldn’t work.  No good, as this it is the default way I launch everything on my machine (no desktop icons FTW).  Turns out deleting one registry key does the trick:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderTypes\{EF87B4CB-F2CE-4785-8658-4CA6C63E38C6}\TopViews\{00000000-0000-0000-0000-000000000000}

It’s user specific, obviously.

Bootable USB installer for Win7

You’ll need a DVD or ISO of Win7 and have your USB drive plugged in.  Take note – this is going to erase it.  Bear in mind you can create a Win7 64 bit installer with this procedure, but you cannot create this install on a Win7 54 bit machine.  Good job Microsoft.
  1. Download DiskPart.
  2. Launch DiskPart by entering diskpart at the start menu or in a command prompt.
  3. Enter list disk.
  4. Enter select disk # where # is the appropriate disk number.
  5. Enter clean.
  6. Enter create partition primary.
  7. Enter active.
  8. Enter format fs=fat32 quick.
  9. Enter assign.
  10. Copy all files from the DVD or ISO to the USB drive and it’s good to go.