Tvorba a registrace WordPress widgetu

Tento článek je druhým dílem série zabývající se tvorbou WordPress widgetu. První článek byl Co byste měli vědět než se pustíte do tvorby prvního widgetu. Co budete potřebovat K tomu, abyste mohli pokračovat ve tvorbě widgetu, budete potřebovat: developerskou instalaci WordPressu vývojářský editor (doporučuji PSPad) Tvorba pluginu První věc, kterou musíte udělat je vytvořit plugin. Vytvořte […]

WYSIWYG widget

Black Studio TinyMCE Widget
https://wordpress.org/…ymce-widget/

This plugin adds a WYSIWYG text widget based on the standard TinyMCE WordPress visual editor. This is intended to overcome the limitations of the default WordPress text widget, so that you can visually add rich text contents to your sidebars, with no knowledge of HTML required.

WordPress 3.9: Snadná práce s widgety

Jenom krátce upozorním na jeden drobný trik, který pomůže usnadnit práci, zejména pokud používáte šablony, které mají definovaných mnoho oblastí pro widgety. Na začátek něco pro připomenutí. Ve WordPressu 3.9 je možné upravovat, přidávat a přemisťovat widgety přímo v rámci aktuálního náhledu (menu Vzhled – Přizpůsobit). Ne­musíte se ale už obávat, že hrátkami s nastavením widgetů […]

Flexibilní widget pro zobrazení příspěvků

Flexible Posts Widget
http://wordpress.org/…osts-widget/

Flexible Posts Widget (FPW) is more than just a simple alternative to the default Recent Posts widget. With many per-instance options it is highly customizable and allows advanced users to display the resulting posts virtually any way imaginable. Features & options

  • Customizable widget title
  • Get posts by post type(s) and/or taxonomy & term(s) or directly by a list of post IDs.
  • Control the number of posts displayed and the number of posts to offset.
  • Option to display the post feature image.
  • Select the post feature image size to display from existing image sizes: thumbnail, medium, large, post-thumbnail or any size defined by the current theme.
  • Order posts by: date, ID, title, menu order, random, Post ID Order; and sort posts: ascending or descending.
  • Each widget's output can be customized by user-defined templates added to the current theme folder.

Customization »

Vytváření vlastních sidebarů a oblastí pro widgety

Custom Sidebars
http://wordpress.org/…om-sidebars/

Allows you to create all the widgetized areas you need, your own custom sidebars, configure them adding widgets, and replace the default sidebars on the posts or pages you want in just few clicks.

Alternativy

Per Page Sidebars
http://wordpress.org/…ge-sidebars/

Allows the creation and display of custom sidebars for any page (or post) on your site. On each page, you can choose which of your current theme's sidebars will be replaced. The replacement works for all descendants of a replaced page.

Svépomocí

V šabloně single.php a/nebo page.php najdeme kód:

get_sidebar();

a nahradíme jej tímto:

$sidebar = get_post_meta($post->ID, "sidebar", true);
get_sidebar($sidebar);

V příspěvku nebo stránce, kde chceme zobrazit specifický sidebar pak přidáme uživatelské pole Sidebar a vložíme do něj jméno specifického sidebaru, např xyz. Soubor sidebar-xyz.php musí samozřejmě existovat. Vytvoříme ho zkopírováním originálního souboru sidebar.php (a případně podle potřeby upravíme).

Soubor sidebar-xyz upravíme následovně:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar("xyz-sidebar") ) : ?><?php endif; ?>

Pro vytvoření vlastní oblasti pro widgety do functions.php přidáme kód:

if ( function_exists('register_sidebar') ) {
        register_sidebar(array(
        'name' => 'xyz',
        'id' => 'xyz-sidebar',
        'description' => 'Uživatelský sidebar pro stránku xyz"',
        'before_widget' => '<div style="height: 280px"></div><li id="%1$s" class="widget %2$s">',
        'after_widget' => '</li>',
        'before_title' => '<h2 class="widgettitle">',
        'after_title' => '</h2>',
        // udaje v after a before třeba upravit v souladu s použitým tématem
        ));
}\---