Tiketovací systém

**Support Tickets**
„http://ideasilo.wordpress.com/2009/10/28/support-tickets/“:http://ideasilo.wordpress.com/2009/10/28/support-tickets/
„http://wordpress.org/extend/plugins/support-tickets/“:http://wordpress.org/extend/plugins/support-tickets/

This is a plugin that allows you to have a ticket system (for customer service on your website). This way the users can send you a ticket with the issues that they are having, helping you avoid situations when you cannot keep track of requests and questions through tons of emails that may get sent to your spam folder. This was actually based on Contact Form 7 made by the same developer. It also has multilingual support for customers/users that may be located in various areas of the world.

*Alternativy:*

**WP-IssueTracker**
„http://wordpress.org/extend/plugins/wp-issuetracker/“:http://wordpress.org/extend/plugins/wp-issuetracker/

WP-IssueTracker is a full (yet basic) issue tracking system to plug right in your WordPress powered site! Operating an issue tracking system has never been this easy!

**WordPress Advanced Ticket System (50,- €)**
„http://wordpress.org/extend/plugins/wats/“:http://wordpress.org/extend/plugins/wats/
„WordPress Advanced Ticket System“:WordPress Advanced Ticket System

WATS (also known as WordPress Advanced Ticket System) is another plugin with ticket submission that turns your WordPress site into its own little CRM. In the backend, there’s an administration panel which has the ticket submission module, and the front end has associated pages creation. A little more advanced than the “Support Tickets” plugin if you are looked for extra ‘oomph’…I guess you would say.

Čištění databáze po pluginech

**Plugins Garbage Collector**
„http://wordpress.org/extend/plugins/plugins-garbage-collector/“:http://wordpress.org/extend/plugins/plugins-garbage-collector/
„http://www.shinephp.com/plugins-garbage-collector-wordpress-plugin/“:http://www.shinephp.com/plugins-garbage-collector-wordpress-plugin/

Plugin maps tables and entries created by plugins in your database. It also shows you which ones are used by which plugin and whether this plugin is active, inactive or deleted, so you can decide if you want to keep or delete those tables.

Různá šablona pro různé příspěvky

**Custom Post Template**
„http://wordpress.org/extend/plugins/custom-post-template/“:http://wordpress.org/extend/plugins/custom-post-template/

Provides a drop-down to select different templates for posts from the post edit screen. The templates are defined similarly to page templates, and will replace single.php for the specified post. This plugin will NOT switch the templates for the different posts in a listing page, e.g. a date or category archive, it will only affect the template used for single posts (i.e. you can choose a template which is not single.php).

Uživatelské widgety pro různé stránky a příspěvky

The **Shiba Widgets plugin** allows you to assign different widgets to different posts, pages, categories, or tags. You can create different widget sets using the standard WordPress widget interface, and then assign these widget sets from a drop-down menu in your edit post, page, category or tag screens.

To retrieve your lost widgets, go into Appearance >> Widget Options and check the Show Lost Widgets box. When you edit widget sets, all unassigned widgets will show up at the bottom of the interface.

„Popis a plugin ke stažení »“:http://shibashake.com/wordpress-theme/wordpress-custom-widgets-plugin

*Alternativa:*

**Widget Logic**
„http://wordpress.org/extend/plugins/widget-logic/“:http://wordpress.org/extend/plugins/widget-logic/

Widget Logic lets you control on which pages widgets appear. It uses any of WP’s „conditional tags“:http://codex.wordpress.org/Conditional_Tags. It also adds a ‚widget_content‘ filter.
This plugin gives every widget an extra control field called „Widget logic“ that lets you control the pages that the widget will appear on.

The text field lets you use WP’s „Conditional Tags“:http://codex.wordpress.org/Conditional_Tags, or any general PHP code.

Jak přidat tagy ke stránkám nebo stránky zařadit do rubriky

Možnost tagování stránek docílíme zaregistrováním příslušných *post_tag* a *category* taxonomií prostřednictvím funkce „register_taxonomy_for_object_type function“:http://codex.wordpress.org/Function_Reference/register_taxonomy_for_object_type:

/—code php
// Add to the admin_init hook of your theme functions.php file
register_taxonomy_for_object_type(‚post_tag‘, ‚page‘);
register_taxonomy_for_object_type(‚category‘, ‚page‘);
\—

která rovněž zobrazí příslušné metaboxy pro přidávání tagů a zařazení stránky do rubriky v administraci.

[* http://wordpress.shibashake.com/wp-content/uploads/2010/09/add-wordpress-tags-categories2-520×325.jpg *]

Abychom pak stránku v rámci přiřazené rubriky či tagů (štítků) zobrazili, přidáme do *functions.ph* filtr:

/—code php
// Add to the init hook of your theme functions.php file
add_filter(‚request‘, ‚my_expanded_request‘);

function my_expanded_request($q) {
if (isset($q[‚tag‘]) || isset($q[‚category_name‘]))
$q[‚post_type‘] = array(‚post‘, ‚page‘);
return $q;
}
\—

ev. pluginem **Tag Pages**
„http://wordpress.org/plugins/tag-pages/“:http://wordpress.org/plugins/tag-pages/

This plugin adds the ‚post_tag‘ taxonomy to the Page post type. This enables the tags metabox in the New or Edit Page interface. To show tagged Pages on a tags archive page or in a feed, it uses the ‚pre_get_posts‘ hook to change the post_type query parameter to ‚any‘.

Chat / instant messenger

**ConverseJS**
„https://wordpress.org/plugins/conversejs/“:https://wordpress.org/plugins/conversejs/

Converse.js is an open source webchat client, that runs in the browser and can be integrated into any website.
It’s similar to Facebook chat, but also supports multi-user chatrooms.

*Alternativy:*

**Cartpauj PM**
„http://wordpress.org/extend/plugins/cartpauj-pm/“:http://wordpress.org/extend/plugins/cartpauj-pm/
„http://cartpauj.com/projects/cartpauj-pm-plugin/“:http://cartpauj.com/projects/cartpauj-pm-plugin/

Cartpauj PM will allow you to easily add a Private Messaging system to your WordPress blog/site. Unlike the other Private Messaging plugins available, Cartpauj PM works through a Page rather than the WP Dashboard. This is very helpful if you want to keep users out of the Dashboard area! Please see the features list below for more about what Cartpauj PM can do. You can demo the plugin here on my site by logging in and sending me a message.

**Live Chat**
„http://wordpress.org/extend/plugins/wp-live-chat-software-for-wordpress/“:http://wordpress.org/extend/plugins/wp-live-chat-software-for-wordpress/

LiveChat is a fast and intuitive live chat software to enable your sales representatives contact customers on the website. Help online visitors find what they need before they leave your site.

– Increase sales conversion rate and customer satisfaction level.
– Allow customers to chat live with the sales person.
– Increase number of successful transactions.
– Secure and reliable communication channel.
– Easy to customize and rebrand chat window. Out-of-the-box chat window templates.

**WP Chat**
„http://wordpress.org/extend/plugins/wp-chat/“:http://wordpress.org/extend/plugins/wp-chat/

WP Chat embeds Jaxl IM which is a simple easy to use communicator for websites with Instant Messaging, Social Networking and Sharing capabilities.
Jaxl IM is a simple easy to use communicator for websites with Instant Messaging, Social Networking and Sharing capabilities.

1. No hardware/software pre-requisite required
2. Compatible with all websites and frameworks
3. Setup by simple copy/paste of javascript code
4. Hosted dashboard for site admins and visitors
5. Customize look and feel using various skins
6. Enhance chat experience using plugins

**Banckle Live Chat**
„http://wordpress.org/extend/plugins/banckle-live-chat-for-wordpress/“:http://wordpress.org/extend/plugins/banckle-live-chat-for-wordpress/

Through Banckle Live Chat Plugin, you can effectively communicate and conduct live chat sessions with the visitors of your WordPress website.

**Pure Cat“
„https://wordpress.org/plugins/pure-chat/“:https://wordpress.org/plugins/pure-chat/
„https://www.purechat.com/“:https://www.purechat.com/

A Personal Chat Page is a customizable, one-page website hosted by Pure Chat, where people can live chat with you. A web app that makes it easy for website owners to chat with their visitors from anywhere! When users create an account and activate our simple, lightweight Pure Chat plugin for WordPress, they’ll be able to design fully-customized chat widgets that automatically appear on their site.

Free up to 15 chats per month.

Zálohování a obnova

**UpdraftPlus Backup and Restoration**
„https://wordpress.org/plugins/updraftplus/“:https://wordpress.org/plugins/updraftplus/

Simplifies backups (and restoration). Backup into the cloud (Amazon S3 (or compatible), Dropbox, Google Drive, Rackspace Cloud, DreamObjects, FTP, SFTP, SCP, WebDAV, OpenStack Swift and email) and restore with a single click. Backups of files and database can have separate schedules.

UpdraftPlus is the highest-ranking backup plugin on rankwp.com (ranks in the top 40 out of 30,000 WordPress plugins for quality on rankwp.com – last checked 21 September 2014).

Widely tested and reliable (over 1.8 million downloads). Ranks in the top 100 most used of all WordPress plugins on rankwp.com. Millions of backups completed!

*Alternativy*

**XCloner – Backup and Restore**
„http://wordpress.org/extend/plugins/xcloner-backup-and-restore/“:http://wordpress.org/extend/plugins/xcloner-backup-and-restore/

XCloner is a Backup and Restore component designed for PHP/Mysql websites, it can work as a native plugin for WordPress and Joomla!.

XCloner design was specifically created to Generate custom backups of any LAMP website through custom admin inputs, and to be able to Restore the clone on any other location with the help of the automatic Restore script we provide, independent from the main package!

XCloner Backup tool uses Open Source standards like TAR and Mysql formats so you can rest assured your backups can be restored in a variety of ways, giving you more flexibility and full control.

XCloner Generate, Move and Restore process:

1. Generate and Store the backups
2. Move the backup and restore script to the new location
3. Restore the backup by launching the XCloner.php restore script

**Duplicator**
„http://wordpress.org/extend/plugins/duplicator/“:http://wordpress.org/extend/plugins/duplicator/

The Duplicator plugin is designed to give WordPress Administrators the ability to migrate a site from one location to another location in 3 easy steps. Just create a package, download it and install. No need to change all your settings and re-run import/export scripts. The plugin also serves as a simple backup utility.
This tool is great for pulling a production site down onto your local machine for testing and validation. It also works great for developing locally and then pushing up to a production server.

It reduces the process to three easy steps:

1. Create a package

2. Download

3. Install in the new location

**EZPZ One Click Backup**
„http://wordpress.org/extend/plugins/ezpz-one-click-backup/“:http://wordpress.org/extend/plugins/ezpz-one-click-backup/

EZPZ One Click Backup is a very easy way to do a complete backup and restoring of your entire WordPress site. In fact it’s so easy to use there are no required user settings, everything is automatic. Just one click and presto, you’ll have a complete backup stored on your server. One more click and you can download the entire backup to your own computer.

If you prefer to download your backup via FTP the path you’ll need is also included. EZPZ OCB also stores your last backup on the server in case you ever need to download it again.

With the new EZPZ Easy Restore restoring your site is a simple two step process.

**BackUpWordPress**
„http://wordpress.org/extend/plugins/backupwordpress/“:http://wordpress.org/extend/plugins/backupwordpress/

Simple automated backups of your WordPress powered website. BackUpWordPress will back up your entire site including your database and all your files.

**WordPress Database Backup**
„http://austinmatzko.com/wordpress-plugins/wp-db-backup/“:http://austinmatzko.com/wordpress-plugins/wp-db-backup/

(Pouze) databázi lze zazálohovat manuálně uložením na server, vlastní počítač nebo posláním na email, ev. automaticky ve zvoleném intervalu.

**myEASYbackup**
„http://wordpress.org/extend/plugins/myeasybackup/“:http://wordpress.org/extend/plugins/myeasybackup/

Backup, restore, migrate your WP installation, both code and MySQL tables, with a single click.

**WP Staging – DB & File Duplicator & Migration**
„https://wordpress.org/plugins/wp-staging/“:https://wordpress.org/plugins/wp-staging/

This duplicator plugin allows you to create an staging or development environment in seconds.
It creates a file clone of your website into a subfolder of your current WordPress installation with an entire copy of your database. This sounds pretty simple and yes it is! All the hard time consumptive database and file copy stuff including url replacements is done in the background. For testing new plugins and updates first before installing them on live website.

Snadné stránkování bez pluginu

Pokud chcete své příspěvky ve WordPress stránkovat, musíte obvykle sáhnout po nějakém pluginu. Což rozhodně není ideální řešení. Stránkování obsahu je prostě základní funkce. Je škoda, že to WordPress neumí bez nějakého zbytečného pluginu!

Jenže on to umí. V administraci se stránkování obsahu používá téměř všude. Což mimo jiné znamená, že na to existuje funkce. Stačí ji tedy jen dobře použít:

$pagination = array(
	'base' => get_pagenum_link().'%_%',
	'format' => 'page/%#%',
	'total' => ceil($wp_query->found_posts / get_settings('posts_per_page')),
	'current' => absint( get_query_var( 'paged' ) ),
	'show_all' => false,
	'prev_next' => true,
	'prev_text' => __('« Previous'),
	'next_text' => __('Next »'),
	'end_size' => 3,
	'mid_size' => 5,
	'type' => 'plain',
	'add_args' => false,
	'add_fragment' => ''
);

echo paginate_links($pagination);

Funkce paginate_links má řadu vstupních parametrů, které jsou podrobně popsány v dokumentaci.

Nejdůležitější je samozřejmě total – měl by obsahovat počet stránek. Ten jsem vypočítal jako zaokrouhlený podíl celkového počtu příspěvku a počtu příspěvků na stránku (tohle se nastavuje se v administraci).

Parametr current by měl obsahovat číslo aktuálně prohlížené stránky. Zjistíte jej snadno pomocí get_query_var. Další dva neméně důležité parametry jsou baseformat – pomocí kterých se tvoří URL odkazu.

Base by měl obsahovat základní část URL. Což je ta část, které se při procházení jednotlivých stránek nemění. Nenapadl mě lepší způsob, než zavolat funkci get_pagenum_link. Řetězec %_% bude při tvorbě URL nahrazen obsahem parametru format.

Format je ono samotné stránkování. Měl by obsahovat tu část URL, která se bude měnit. V mém příkladu využívám tzv. hezké URL. Takže číslo stránky je očekávané za page. Řetězec %#% bude nahrazen čísly. Výsledná URL tak bude vypadat například takto http://www.nabito.net/page/2

Ostatní parametry jsou spíš doplňkové.

Zvýraznění právě hledaných slov

Několik následujících řádků kódu obalí všechna právě vyhledávaná klíčová slova do značky STRONG (class search-keyword). Kód je možné vložit do function.php ve Vašem template. Nebo jej můžete vložit rovnou do search.php někde těsně za volání funkce get_header(). Předpokladem samozřejmě je, že využíváte standardních vyhledávacích funkcí WordPress.

function omSearchHeighlight($text)
{
$keys = explode(" ", get_search_query());
$text = preg_replace('/('.implode('|', $keys) .')/iu', '<strong class="search-keyword">\0</strong>', $text);
return $text;
}

add_filter('the_title','omSearchHeighlight');
add_filter('the_content','omSearchHeighlight');
add_filter('the_excerpt','omSearchHeighlight');

// nezapomeňte strong element nastylovat např.
// strong.search-keyword {background: #f3ff0f!important; color:#000!important;}

Výsledkem je malé, ale užitečné, vylepšení výsledků vyhledávání, které Vás navíc nestojí téměř žádnou námahu. Ještě malá poznámka na závěr: Kód nedbá na velikost písmen.

Odstranění části admin menu

WordPress není systém, který by nabízel přebujelé množství funkcí. Administrace je jednoduchá a přehledná. Přesto se občas může hodit, nějakou tu funkci natvrdo schovat před nenechavým klikáním zákazníka.

Celé administrátorské menu je uložené v souboru wp-admin/menu.php – do toho samozřejmě sahat nebudeme. Tento soubor nám postačí k tomu, abychom zjistili jak se menu tvoří. Menu je uložené ve dvou polích: $menu$submenu. Obě tyto pole můžeme svobodně upravit, protože se jedná o globální proměnné. Svobodně upravit znamená například část vymazat. Úpravu těchto polí musíme samozřejmě stihnout před tím, než se pole použijí při vykreslování menu.

Do souboru function.php, který najdete ve wp-content/template/cokoliv, stačí přidat nový hook a funkci:

function edit_remove_menu() {
  global $menu, $submenu;
  unset($menu[25]); // odstraní z menu komentáře
  unset($menu[15]); // odstraní z menu odkazy

  // dale je mozne upravit také submenu
  unset($submenu['edit.php'][15]); // odstraní Příspěvky / Štítky
}

add_action('admin_menu', 'edit_remove_menu');

Na závěr malé upozornění, jednotlivé skryté funkcionality nadále fungují, pouze nejsou vidět v menu. Takže pokud znáte tu správnou adresu, můžete se k nim normálně dostat.