{file}.php]if(!function_exists('get_post_templates')) {function get_post_templates() { $themes = get_themes(); //an array of all themes in the /themes directory $theme = get_current_theme(); //the current, active theme $templates = $themes[$theme]['Template Files']; //a list of all the current theme's template files $page_templates = array (); foreach ((array)$templates as $template ) { //this loop returns all the "post templates" $template_data = implode( '', file( WP_CONTENT_DIR.$template )); $name = ''; if ( preg_match( '|Single Post Template:(.*)$|mi', $template_data, $name ) ) { $name = $name[1]; } if ( !empty( $name ) ) { $post_templates[trim( $name )] = basename( $template ); } } return $post_templates; //return the array of Post Templates}}//build the dropdown itemsfunction page_templates_dropdown() { global $post; $post_templates = get_post_templates(); foreach ($post_templates as $template_name => $template_file) { //loop through templates, make them options if ($template_file == get_post_meta($post->ID, '_wp_post_template', true)) { $selected = ' selected="selected"'; } else { $selected = ''; } $opt = ''; echo $opt; }}//Filter the single template value, and replace it with//the template chosen by the user, if they chose one.add_filter('single_template', 'get_post_template');if(!function_exists('get_post_template')) {function get_post_template($template) { global $post; $custom_field = get_post_meta($post->ID, '_wp_post_template', true); if(!empty($custom_field) && file_exists(TEMPLATEPATH . "/{$custom_field}")) { $template = TEMPLATEPATH . "/{$custom_field}"; } return $template;}}//Everything below this is for adding the extra box//to the post edit screen so the user can choose a template//Adds a custom section to the Post edit screenadd_action('admin_menu', 'pt_add_custom_box');function pt_add_custom_box() { if(get_post_templates() && function_exists( 'add_meta_box' )) { add_meta_box( 'pt_post_templates', __( 'Single Post Template', 'pt' ), 'pt_inner_custom_box', 'post', 'normal', 'high' ); //add the boxes under the post }} //Prints the inner fields for the custom post/page sectionfunction pt_inner_custom_box() { global $post; // Use nonce for verification echo ''; // The actual fields for data entry echo '

'; echo '
';}//When the post is saved, saves our custom dataadd_action('save_post', 'pt_save_postdata', 1, 2); // save the custom fieldsfunction pt_save_postdata($post_id, $post) { // verify this came from the our screen and with proper authorization, // because save_post can be triggered at other times if ( !wp_verify_nonce( $_POST['pt_noncename'], plugin_basename(__FILE__) )) { return $post->ID; } // Is the user allowed to edit the post or page? if ( 'page' == $_POST['post_type'] ) { if ( !current_user_can( 'edit_page', $post->ID )) return $post->ID; } else { if ( !current_user_can( 'edit_post', $post->ID )) return $post->ID; } // OK, we're authenticated: we need to find and save the data // We'll put the data into an array to make it easier to loop though and save $mydata['_wp_post_template'] = $_POST['_wp_post_template']; // Add values of $mydata as custom fields foreach ($mydata as $key => $value) { //Let's cycle through the $mydata array! if( $post->post_type == 'revision' ) return; //don't store custom data twice $value = implode(',', (array)$value); //if $value is an array, make it a CSV (unlikely) if(get_post_meta($post->ID, $key, FALSE)) { //if the custom field already has a value... update_post_meta($post->ID, $key, $value); //...then just update the data } else { //if the custom field doesn't have a value... add_post_meta($post->ID, $key, $value);//...then add the data } if(!$value) delete_post_meta($post->ID, $key); //and delete if blank }}?> Office/Workspace : Sea Ranch, Gualala Vacation Rentals
Sea Ranch, Gualala Vacation Rentals
Office/Workspace

Pilar

Pilar

Welcome to Coasting Home, Inc.! This is: Pilar 2 Bedrooms + office 2 Baths 6 max Dogs OK Kids OK Guest Reviews Medieval construction methods meet 21st Century styling and amenities right here on the northern Sonoma coast! Pilar is an elegant example of Post and Beam construction. The house was built by local artisan and Timberpeg builder Michael Thomas, with a lot of hands-on participation... [Read more about this property]

Pacific Vista

Pacific Vista

Welcome to Coasting Home, Inc.! This is: Pacific Vista 2 Bedrooms + Office 2 Baths 6 max Dogs OK Kids OK Guest Reviews Aptly named, “Pacific Vista” offers soothing blue water views of the ocean from this east-of-One setting. Deer, rabbits and wild birds inhabit this meadow-like area, and the rare and dramatic cove called Hearn Gulch is an easy hike away. The house is approximately... [Read more about this property]

Great Expectations

Great Expectations

Welcome to Coasting Home! This is Great Expectations: 3 Bedrooms + Den 3 Baths 8 max no Dogs Best for Adults Guest Reviews This wonderful covered bridge separates the home from the rest of the world, and invites you to leave it all behind! A uniquely custom-designed Sea Ranch masterpiece. Architect: William Turnbull, Jr. Built by: Matt Sylvia Rural elements blend beautifully with innovative... [Read more about this property]

Goldenwood

Goldenwood

Welcome to Coasting Home! This is Goldenwood: 2 Bedrooms 2.5 Baths 4 max Dogs OK Kids OK Guest Reviews Goldenwood offers exceptional ambience in a lovely park-like setting. The proximity to hiking trails and the river beach are great extras! Goldenwood is just a short drive from the Moonraker Recreation Center (tennis, pool, saunas, showers), The Sea Ranch Lodge for dining or cocktails,... [Read more about this property]