Vytváření a úpravy menu s využitím „Walkeru“

Once you have created a menu at your wordpress backend at Appearance > Menus you can use a wordpress function called „wp_nav_menu()“:http://codex.wordpress.org/Function_Reference/wp_nav_menu within your template files to display those menus.

When you are at the Appearance > Menus Site you need to look at the top right and you will notice a “Screen Option” tab. Click it and you will get the option to display several other input fields for each menu item, among them a checkbox to show the description.

A special “Walker” class iterates over each data record and then displays this record accordingly. We can simply create our own custom walker extending that PHP class. That way we dont need to care about fetching the stuff from the database or preparing the data arrays. We only need to extend the part of the wordpress code that outputs the list to functions.php file and add the code

class description_walker extends Walker_Nav_Menu

After we have created a custom walker we only need to tell wordpress that it should use our walker instead of its own. This can be easily done by calling the „wp_nav_menu()“:http://codex.wordpress.org/Function_Reference/wp_nav_menu with the walker parameter set.

Zdroj: „Improve your WordPress Navigation Menu Output“:http://www.kriesi.at/archives/improve-your-wordpress-navigation-menu-output

Interní prolinkování příspěvků a stránek

**RB Internal Links**
„http://wordpress.org/extend/plugins/rb-internal-links/“:http://wordpress.org/extend/plugins/rb-internal-links/

Link to posts and pages within your blog using shortcodes, similar to a wiki or cms. No need to remember full URLs, post ids or slugs with the wysiwyg
As well as quickly typing in the link tag there is a tinymce wysiwyg plugin that allows you to search for posts by category.

*Alternativy:*

**Link to post**
„http://wordpress.org/extend/plugins/link-to-post/“:http://wordpress.org/extend/plugins/link-to-post/

This plugin permits you to easily create a link to an existing content of your site. It adds a button to the tinymce and quicktags editors, which list the existing articles, pages, category, tags.

Na rozdíl od RB internal Links odkazuje Link to post absolutně (RB používá shortcode s ID stránky či postu) a nenabízí jako RB internal Links volbu odkazování do nového okna, RB internal Links zas neumí odkazovat na rubriky či tagy.

**Hikari Internal Links**
„http://wordpress.org/extend/plugins/hikari-internal-links/“:http://wordpress.org/extend/plugins/hikari-internal-links/

Don’t worry anymore of linking a post or a category, to later change its title or slug, or changing your posts permalinks, and creating invalid links to your own site pages.

Hikari Internal Links provides a shortcode that dynamically generates links to most WordPress resources. You can query these resources based on their ID or slug, and these links are generated dynamically. Therefore if you change a resource’s title or permalink, its links will be updated automatically.

Automatické prolinkování ze zadaných klíčových slov
***************************************************

**Internal Link Building**

New SEO Plugin for WordPress: Internal Link Building

Pomocí tohoto pluginu lze jednoduše vkládat jednotlivá klíčová slova, která automaticky následně odkazují na určenou stránku či příspěvek.

*Alternativy:*

**Automatic SEO Links**
„http://wordpress.org/extend/plugins/automatic-seo-links/“:http://wordpress.org/extend/plugins/automatic-seo-links/

Forget to put manually your links, just choose a word and a URL and this plugin will replace all matches in the posts of your blog.
For each link, you can set: Title, Target, Rel.

**Digg Links**
„http://wordpress.org/extend/plugins/digg-links/“:http://wordpress.org/extend/plugins/digg-links/

With Digg Links you will be able to replace a word or sentence into another custom string.
Based on Link a Dink this plugin is ideal for affiliate marketing.

**SEO Smart Links**
„http://www.prelovac.com/vladimir/wordpress-plugins/seo-smart-links“:http://www.prelovac.com/vladimir/wordpress-plugins/seo-smart-links
„http://wordpress.org/extend/plugins/seo-automatic-links/“:http://wordpress.org/extend/plugins/seo-automatic-links/

SEO Smart Links can automatically link keywords and phrases in your posts and comments with corresponding posts, pages, categories and tags on your blog.
Further SEO Smart links allows you to set up your own keywords and set of matching URLs. Caching for speed.

*Poznámka:*

Od verze WP 3.1. je ve vizuálním editoru přepracováno **tlačítko pro vkládání odkazů**, které nyní umí rychle vyhledávat obsah na webu a přímo automaticky vložit odkaz. Články jsou průběžně vyhledávány už během psaní klíčového slova a nová funkce není omezena jen na příspěvky, takže vidíte i stránky a případné další vlastní typy obsahu. Odkaz je ale bohužel vkládán do textu jako HTML kód, takže tam v této podobě zůstane, i když třeba adresu odkazovaného příspěvku později změníte. V tomto ohledu je praktičtější **RB Internal Links**, který vkládá odkazy pomocí ID stránek, příspěvků či rubrik.

Obsah v záložkách na stránce či v příspěvku

**Tabbed Content**
„http://myplugins.org/plugins/2009-06-26/tabbed-content.html“:http://myplugins.org/plugins/2009-06-26/tabbed-content.html

Tabs are a nice way to display a huge amount of content on less space. On WordPress powered websites you mostly see them in sidebars. This nice and tiny plugin enables you to use tabs even in your posts and pages. Much more content can then easily be displayed. Another nice feature is that you still can use other plugins inside.

Pohodlnější stránkování

**WP-PageNavi**
„http://wordpress.org/extend/plugins/wp-pagenavi/“:http://wordpress.org/extend/plugins/wp-pagenavi/
„http://lesterchan.net/wordpress/readme/wp-pagenavi.html“:http://lesterchan.net/wordpress/readme/wp-pagenavi.html

Přidá přehledné a pohodlné stránkování, které se dá různým způsobem nastavovat.

Implementováno na tomto webu, ve *style-Default.css* jsou doplněny styly pro šablonu „PureType“:209

/—code php
.wp-pagenavi { margin: 15px 0px 15px 0px; }
.wp-pagenavi a, .wp-pagenavi a:link { padding: 5px 7px; margin: 2px; text-decoration: none; border: 1px solid #e1e1c8; color: #413f36; background-color: #eeeedd; }
.wp-pagenavi a:visited { padding: 5px 7px; margin: 2px; text-decoration: none; border: 1px solid #e1e1c8; color: #413f36; background-color: #eeeedd; }
.wp-pagenavi a:hover { border: 1px solid #608e7a; color: #FFF; background-color: #7bab96; }
.wp-pagenavi a:active { padding: 5px 7px; margin: 2px; text-decoration: none; border: 1px solid #e1e1c8; color: #413f36; background-color: #eeeedd; }
.wp-pagenavi span.pages { padding: 5px 7px; margin: 2px 2px 2px 2px; color: #000000; border: 1px solid #e1e1c8; color: #413f36; background-color: #eeeedd; }
.wp-pagenavi span.current { padding: 5px 7px; margin: 2px; font-weight: bold; border: 1px solid #608e7a; color: #FFF; background-color: #7bab96; }
.wp-pagenavi span.extend { padding: 5px 7px; margin: 2px; border: 1px solid #608e7a; color: #FFF; background-color: #7bab96; }
\—

„Přehled pluginů pro stránkování“:http://skyje.com/2010/02/5-excellent-wordpress-pagination-solutions/

Problém s funkcí query_post při stránkování

Jestliže v šabloně z nějakých důvodů nevystačíme se standardním načtením článků pomocí konstrukce

/—code php
if (have_posts()) : while (have_posts()) : the_post();
\—

a potřebujeme využít funkci „query_posts()“:http://codex.wordpress.org/Function_Reference/query_posts například pro vyloučení některých kategorií, tagů, autora a podobně, typicky v podobě:

/—code php
// výběr článků z vybraných rubrik
query_posts(‚cat=2,6,17,38‘);

// výběr článků patřících do několika rubrik současně
query_posts(array(‚category__and‘ => array(2,6)));

// výběr článků s vyloučením určité rubriky
query_posts(‚cat=-3‘);
\—

Rychle zjistíme, že tento postup sice vede k cíli, nicméně **přestane fungovat stránkování** a tím i pluginy jako např. výborný „WP-PageNavi“:222.

Náprava je jednoduchá:

/—code php
if (have_posts()):

// obnovíme parametr ‚paged‘
$paged = (get_query_var(‚paged‘)) ? get_query_var(‚paged‘) : 1;
query_posts(„cat=-3&paged=$paged“);

// a pak už pokračujeme standardním
while (have_posts()) : the_post();
\—

Viz též „Separatista“:http://www.separatista.net/wordpress/tipy-a-triky/problemy-se-strankovanim-prispevku-pri-pouziti-funkce-query_posts nebo „David Binda“:http://david.binda.cz/wordpress-nefunkcni-strankovani-v-dusledku-query_posts.

„Properly using wp_reset_postdata(), wp_reset_query() and variable naming in queries »“:http://www.poststat.us/properly-reset-wordpress-query/

„How to fix pagination for custom loops »“:http://wordpress.stackexchange.com/questions/120407/how-to-fix-pagination-for-custom-loops

Zobrazení souvisejících příspěvků

This is a great little feature to have in your theme that saves the theme user using yet another plugin! It displays **related posts based on tags**, simply disappearing if there are no tags.

/—code php
ID);
if ($tags) {
echo ‚

Related Posts

‚;
$first_tag = $tags[0]->term_id;
$args=array(
‚tag__in‘ => array($first_tag),
‚post__not_in‘ => array($post->ID),
‚showposts’=>5,
‚caller_get_posts’=>1
);
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>

  • Dynamické tlačítko zpět nahoru

    Tlačítko usnadňující rychlý návrat na začátek stránky nabízí plugin Dynamic „To Top“.

    Princip jeho fungování je prostý. Po aktivaci se při rolování webové stránky směrem dolů objeví po pravé straně černé tlačítko s šipkou vzhůru, které čtenáře po kliknutí jednoduše přenese na začátek (top) stránky. Jednoduchá, ale efektní funkce.
    Plugin byl aktualizován pro WordPress 2.9.2. Vyžaduje WordPress […]