Zvýraznění syntaxe kódu v editaci šablon a pluginů

Power Code Editor
http://wordpress.org/extend/plugins/power-code-editor/
http://anetech.eu/power-code-editor/

Helps you more effectively edit your themes or plugins when you only have access to a browser, by enabling syntax highlighting in WordPress‘ integrated source code editors. Supports PHP, HTML, CSS and JavaScript.

*Alternativy:*

WP Code Editor Plus
http://wordpress.org/extend/plugins/wp-code-editor-plus/

Current Features Include: * Syntax Highlighter * JavaScript Code Completion * Ability to resize editor via click & drag

HTML Editor Syntax Highlighter
http://wordpress.org/extend/plugins/html-editor-syntax-highlighter/screenshots/

WP Editarea
http://wordpress.org/extend/plugins/wp-editarea/
http://takien.com/606/wp-editarea-wordpress-plugin.php

Umožňuje editor vypínat a zapínat, v kódu lze vyhledávat a nahrazovat.

Implementováno na tomto webu.

WP Editor
http://wpeditor.net/
http://wordpress.org/plugins/wp-editor/

WP Editor is a plugin for WordPress that replaces the default plugin and theme editors as well as the page/post editor. Using integrations with CodeMirror and FancyBox to create a feature rich environment, WP Editor completely reworks the default WordPress file editing capabilities. Using Asynchronous Javascript and XML (AJAX) to retrieve files and folders, WP Editor sets a new standard for speed and reliability.

Řazení odkazů

My Link Order
http://wordpress.org/extend/plugins/my-link-order/
„http://www.geekyweekly.com/mylinkorder“:http://

My Link Order allows you to set the order in which links and link categories will appear in the sidebar. Uses a drag and drop interface for ordering. Adds a widget with additional options for easy installation on widgetized themes.

Implementováno na tomto webu. Pozor, v případě použití widgetů je třeba v sidebaru použít widget tohoto pluginu.

Roletka s tagy v sidebaru

Do sidebaru lze doplnit roletku s existujícími tagy přidáním funkcí do *Funkcí aktuálního vzhledu*,


<?php
function dropdown_tag_cloud( $args = '' ) {
	$defaults = array(
		'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,
		'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC',
		'exclude' => '', 'include' => ''
	);
	$args = wp_parse_args( $args, $defaults );

	$tags = get_tags( array_merge($args, array('orderby' => 'count', 'order' => 'DESC')) ); // Always query top tags

	if ( empty($tags) )
		return;

	$return = dropdown_generate_tag_cloud( $tags, $args ); // Here's where those top tags get sorted according to $args
	if ( is_wp_error( $return ) )
		return false;
	else
		echo apply_filters( 'dropdown_tag_cloud', $return, $args );
}

function dropdown_generate_tag_cloud( $tags, $args = '' ) {
	global $wp_rewrite;
	$defaults = array(
		'smallest' => 8, 'largest' => 22, 'unit' => 'pt', 'number' => 45,
		'format' => 'flat', 'orderby' => 'name', 'order' => 'ASC'
	);
	$args = wp_parse_args( $args, $defaults );
	extract($args);

	if ( !$tags )
		return;
	$counts = $tag_links = array();
	foreach ( (array) $tags as $tag ) {
		$counts[$tag->name] = $tag->count;
		$tag_links[$tag->name] = get_tag_link( $tag->term_id );
		if ( is_wp_error( $tag_links[$tag->name] ) )
			return $tag_links[$tag->name];
		$tag_ids[$tag->name] = $tag->term_id;
	}

	$min_count = min($counts);
	$spread = max($counts) - $min_count;
	if ( $spread <= 0 )
		$spread = 1;
	$font_spread = $largest - $smallest;
	if ( $font_spread <= 0 )
		$font_spread = 1;
	$font_step = $font_spread / $spread;

	// SQL cannot save you; this is a second (potentially different) sort on a subset of data.
	if ( 'name' == $orderby )
		uksort($counts, 'strnatcasecmp');
	else
		asort($counts);

	if ( 'DESC' == $order )
		$counts = array_reverse( $counts, true );

	$a = array();

	$rel = ( is_object($wp_rewrite) && $wp_rewrite->using_permalinks() ) ? ' rel="tag"' : '';

	foreach ( $counts as $tag => $count ) {
		$tag_id = $tag_ids[$tag];
		$tag_link = clean_url($tag_links[$tag]);
		$tag = str_replace(' ', '&nbsp;', wp_specialchars( $tag ));
		$a[] = "\t<option value='$tag_link'>$tag ($count)</option>";
	}

	switch ( $format ) :
	case 'array' :
		$return =& $a;
		break;
	case 'list' :
		$return = "<ul class='wp-tag-cloud'>\n\t<li>";
		$return .= join("</li>\n\t<li>", $a);
		$return .= "</li>\n</ul>\n";
		break;
	default :
		$return = join("\n", $a);
		break;
	endswitch;

	return apply_filters( 'dropdown_generate_tag_cloud', $return, $tags, $args );
}
?>

Do sidebaru pak vložíme kód roletky


<select name="tag-dropdown" onchange="document.location.href=this.options[this.selectedIndex].value;">
	<option value="#">Liste d'auteurs</option>
	<?php dropdown_tag_cloud('number=0&order=asc'); ?>
</select>

Zdroj:
http://hackwordpress.com/how-to-display-wordpress-tags-dropdown-menu/

Implementováno na tomto webu.

Zobrazení nejnovějších příspěvků z vybrané rubriky

Category Posts Widget
http://wordpress.org/extend/plugins/category-posts/
http://jameslao.com/2009/12/30/category-posts-widget-3-0/

Category Posts Widget is a light widget designed to do one thing and do it well: display the most recent posts from a certain category.

Features:

– Support for displaying thumbnail images via WP 2.9’s new post thumbnail feature.
– Set how many posts to show.
– Set which category the posts should come form.
– Option to show the post excerpt and how long the excerpt should be.
– Option to show the post date.
– Option to show the comment count.
– Option to make the widget title link to the category page.
– Multiple widgets.

Implementováno na tomto webu.

Filtrování podle několika tagů současně

Sk Multi Tag
http://wordpress.org/extend/plugins/sk-multi-tag/
http://www.skipstorm.org/2009/06/sk-multi-tag/

This plugin adds a tag cloud widget where you can select multiple tags at once.

Implementováno na tomto webu.

Úpravy:

V editaci pluginu lze nastavit jednotnou velikost tagů zobrazených v cloudu a doplnit do definičního pole cloudu oddělovač tagů. Roletka s tagy přidána pomocí funkcí vzhledu

*Alternativy*

MultiTags
http://wordpress.org/extend/plugins/multitags/
http://www.vogel-nest.de/wp_multitags_plugin

Odstranění rubriky z url

WP No Category Base
http://wordpress.org/extend/plugins/wp-no-category-base/
http://wordpresssupplies.com/wordpress-plugins/no-category-base/

This plugin will completely remove the mandatory ‚Category Base‘ from your category permalinks ( e.g. myblog.com/category/my-category/ to myblog.com/my-category/ ).

Implementováno na tomto webu.

*Alternativa*

No category parents
http://wordpress.org/extend/plugins/no-category-parents/

This plugin will completely remove the mandatory ‚Category Base‘ and all the parents from your category permalinks (e.g. /category/parent-category/my-category/ to /my-category/).

Odstranění rubriky z URL lze dosáhnout i zápisem v souboru .htaccess:


RewriteRule ^category/(.+)$ http://www.yourblog.com/$1 [R=301,L]

Případně:


// Remove category base
add_filter('category_link', 'no_category_parents',1000,2);
function no_category_parents($catlink, $category_id) {
    $category = &get_category( $category_id );
    if ( is_wp_error( $category ) )
        return $category;
    $category_nicename = $category->slug;

    $catlink = trailingslashit(get_option( 'home' )) . user_trailingslashit( $category_nicename, 'category' );
    return $catlink;
}

// Add our custom category rewrite rules
add_filter('category_rewrite_rules', 'no_category_parents_rewrite_rules');
function no_category_parents_rewrite_rules($category_rewrite) {
    //print_r($category_rewrite); // For Debugging

    $category_rewrite=array();
    $categories=get_categories(array('hide_empty'=>false));
    foreach($categories as $category) {
        $category_nicename = $category->slug;
        $category_rewrite['('.$category_nicename.')/(?:feed/)?(feed|rdf|rss|rss2|atom)/?$'] = 'index.php?category_name=$matches[1]&feed=$matches[2]';
        $category_rewrite['('.$category_nicename.')/page/?([0-9]{1,})/?$'] = 'index.php?category_name=$matches[1]&paged=$matches[2]';
        $category_rewrite['('.$category_nicename.')/?$'] = 'index.php?category_name=$matches[1]';
    }
    // Redirect support from Old Category Base
    global $wp_rewrite;
    $old_base = $wp_rewrite->get_category_permastruct();
    $old_base = str_replace( '%category%', '(.+)', $old_base );
    $old_base = trim($old_base, '/');
    $category_rewrite[$old_base.'$'] = 'index.php?category_redirect=$matches[1]';

    //print_r($category_rewrite); // For Debugging
    return $category_rewrite;
}

// Add 'category_redirect' query variable
add_filter('query_vars', 'no_category_parents_query_vars');
function no_category_parents_query_vars($public_query_vars) {
    $public_query_vars[] = 'category_redirect';
    return $public_query_vars;
}
// Redirect if 'category_redirect' is set
add_filter('request', 'no_category_parents_request');
function no_category_parents_request($query_vars) {
    //print_r($query_vars); // For Debugging
    if(isset($query_vars['category_redirect'])) {
        $catlink = trailingslashit(get_option( 'home' )) . user_trailingslashit( $query_vars['category_redirect'], 'category' );
        status_header(301);
        header("Location: $catlink");
        exit();
    }
    return $query_vars;
}

The RSS feeds, however, don’t seem to work with this shorter url, and still require the long-form url. (Not sure if there’s a fix for that.) Also, it doesn’t change the post permalink. It’s just the category permalink that changes. Paste the code below into your functions.php file.

Zobrazování polí v administraci

CMS Post Control
http://wp-cms.com/our-wordpress-plugins/post-control-plugin/
http://wordpress.org/extend/plugins/wp-cms-post-control/

Gives you complete control over your write controls. It not only allows you to hides unwanted items like custom fields, trackbacks, revisions etc. but also gives you a whole lot more control over how WordPress deals with creating content! This helps you use WordPress more like a CMS, alowing you to totally customise what your authors see and use.

Editace stránek přímo na webu

Front-end Editor
http://scribu.net/wordpress/front-end-editor
http://wordpress.org/extend/plugins/front-end-editor/

A WordPress plugin that enables “edit in place” functionality on your site. Compatible with any theme.
Allows to edit the posts from front-end, through some kind of Ajax interface. To use it, just double click the post or title area and inline text editor will appear where you can edit the post directly without going into the admin panel. Great for fixing typos.