Limit the index page of your website to show only posts from certain category
The right place for this code is in index.php
<? // query all the posts for each cat query_posts("cat=17"); // &showposts=2 ?> <?php if (have_posts()) : ?> <?php while (have_posts()) : the_post(); ?> <?php // http://codex.wordpress.org/Conditional_Tags // This is my second best choice! but with query_posts is nicer! // if (!in_category('17') && is_home()) continue; ?>
How to display Posts only directly connected to a category (no subcategories)
Paste this in your category.php
<? // let wordpress to display only the direct chields of the category - no posts belong to sub-category of the current category $selected_category_id = get_query_var('cat'); $selected_category = get_category($selected_category_id); $chield_categories = get_categories("child_of=" . $selected_category_id . "&hide_empty=0&orderby=ID&style=none"); $chield_category_ids = array(); foreach ((array) $chield_categories as $cat) { $chield_category_ids[] = $cat->cat_ID; } query_posts( array( 'category__not_in' => $chield_category_ids, 'cat' => $selected_category_id, ) ); ?> <?php if (have_posts()) : ?>
Get nice navigation with smart subcategories
Make 2 line navigation starting from a category. Put in your header.php
<div id="top_menu"> <div style="margin: auto; width: 930px; height: 29px;"> <?php // The root category from which we will display the main menu $category_root_id = 15; $selected_category_id = get_query_var('cat'); $selected_category = get_category($selected_category_id); if (intval($selected_category->parent) == $category_root_id) { $selected_main_category = $selected_category; } else { $selected_main_category = get_category($selected_category->parent); } $categories = get_categories('child_of='.$category_root_id.'&hide_empty=0&show_count=0&orderby=id&hierarchical=0'); $menu = array(); $category_widths = array( -1 => 110, 4 => 103, 5 => 111, 6 => 127, 7 => 158, 8 => 172, 9 => 131, ); $separator = '<div class="separator"></div>'; // lets prepare the first element of the menu "HOME" array_push($menu, $separator); $class="menu-button"; if (is_home()){ $class="menu-button-selected"; } $category = '<div class="'.$class.'"><a style="width:'.$category_widths[-1].'px" href="/">Начало</a></div>'; array_push($menu, $category); array_push($menu, $separator); foreach ($categories as $cat) { if (intval($cat->parent) == $category_root_id) { $category_id = $cat->cat_ID; $class="menu-button"; if ( $category_id == $selected_category_id || $selected_main_category->cat_ID == $category_id ) { $class="menu-button-selected"; } $category = '<div class="'.$class.'"><a style="width: '.$category_widths[intval($cat->cat_ID)].'px" href="'.get_category_link($cat->cat_ID).'">'.$cat->name.'</a></div>'; array_push($menu, $category); array_push($menu, $separator); } } echo join($menu, ""); ?> </div> <? if (! is_home()) { ?> <div style="margin: auto; height: 26px; background-color: rgb(115, 119, 129);"> <? $sub_categories = get_categories('child_of='.$selected_main_category->cat_ID.'&hide_empty=0&show_count=0&orderby=id&hierarchical=0'); $sub_menu = array(); $separator_html = '<img width="20" height="28" style="vertical-align: top; margin-top: -3px;" src="'.get_theme_root_uri().'/tkhold/images/sub-menu-div.gif"/>'; foreach ($sub_categories as $sub_cat) { if (intval($sub_cat->parent) == $selected_main_category->cat_ID) { $sub_category_id = $sub_cat->cat_ID; $class="sub_menu_normal"; if ($sub_category_id == $selected_main_category->cat_ID) { $class="sub_menu_selected"; } $sub_category_link = get_category_link($sub_category_id); $sub_category_name = $sub_cat->name; $category_html = <<<ZHTML <a href="$sub_category_link">$sub_category_name</a> ZHTML; array_push($sub_menu, $category_html); } } echo "<div class=\"sub_category_button_${category_id} submenu $class \">"; echo join($sub_menu, $separator_html); echo "</div>"; ?> </div> <? } // is home? ?>
Moving wordpress to another domain
UPDATE wp_posts SET guid = replace(guid, 'http://del.gudasoft.com','http://tkhold.gudasoft.com'); UPDATE wp_posts SET post_content = replace(post_content, 'http://del.gudasoft.com','http://tkhold.gudasoft.com'); UPDATE wp_posts SET post_title = replace(post_title, 'http://del.gudasoft.com','http://tkhold.gudasoft.com');
Links
- http://wpbits.wordpress.com/
- widget in the sidebar
- cheatsheets http://kahi.cz/wordpress/wordpress-cheatsheets-summarized/
Plugins
multi language plugin – http://www.jide.fr/english/downloads/plugin-yammyamm-wordpress/