Omezení počtu slov ve výpisu přípěvků

Příspěvek lze v šabloně vypisovat dvěma způsoby. Buď jako the_content, kdy se vypíše celý nebo jako the_excerpt, kdy se zobrazí pouze prvních 55 slov. Pokud nechcete vaše články zkracovat přes tag more můžete využít právě automatického zkracování pomocí excerpt. Problém ale nastává pokud chcete nějak limit slov změnit. Do souboru function.php ve vaši šabloně vložte následující kód:

function new_excerpt_length($length) {
return 100;
}
add_filter('excerpt_length', 'new_excerpt_length');

Zobrazování substránek v menu

Dnes si ukážeme, jak správně pracovat se substránkami v menu. Budeme se snažit, aby se podstránky zobrazily pouze v případě, že jsme aktuálně na stránce rodiče nebo sourozence. Toho dosáhneme pomocí funkce wp_list_pages() a kaskádových stylů.

Prvním krokem se stane vytvoření samotného systému substránek:

Vzniklý kód pak musíme správně nastylovat. To nám umožní wordpress, který chytře vypisuje hodnotu class na jednotlivé položky menu.

.page_menu ul.children {display: none}
.page_menu li.current_page_ancestor ul,.page_menu li.current_page_item ul {display: block}

Vy výchozím stavu se tedy všechny podstránky skryjí, ale pokud je aktivní rodič nebo sourozenec, tak se zaktivní. Jak jednoduché, jak prosté.

Tlačítka sociálních sítí

Můžete je nemít rádi, můžete je proklínat, můžete jim dokonce slibovat věčná muka v plamenech pekelných, ale sociální sítě to neodradí. Možná spíše posílí. Jejich slizká chapadla se budou nadále plížit temnými uličkami internetu. Pokud se tedy nechcete vehementně bránit a naopak jim toužíte otevřít svá vrátka, tak dnešní článek je určen přesně pro vás.

Přidat tlačítko sociální sítě do článku nebo stránky je v celku jednoduché. Stačí do šablony plácnout kód, který vám twitter a facebook nabízí na zlatavém talíři. Aby se ale tlačítka vázala ke konkrétním článkům, když jsou zobrazeny ve vyšších počtu, je třeba provést jisté zásahy. Jako první pán na holení se nám hlásí twitter. Máme možnost nastavit svůj twitter účet, url článku a název článku. Potřebný kód vypadá takto:

<a href="http://twitter.com/share" data-url="<?php the_permalink(); ?>" data-text="<?php the_title(); ?>" data-count="vertical" data-via="fabulatorcz">Tweet</a><script type="text/javascript" src="https://platform.twitter.com/widgets.js"></script>

Facebookovské tlačítko „líbí se mi“ je ještě o kousek jednodušší, protože po nás chce jen permalink. Tak na nic nečekejme a nakrmme ho.

<iframe src="https://www.facebook.com/plugins/like.php?href=<?php the_permalink(); ?>&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;font=lucida+grande&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>

A nyní mohou vaši sociálně chtivý návštěvníci sdílet se svými přáteli informace z pohodlí vašeho webu.

Překlad počtu komentářů

Určitě jste se s tím setkali. Po projití desítek webů s šablonami konečně naleznete takovou, která je natolik levná, že kvůli ní nemusíte posílat svoje poslední spodky na aukro a zároveň se jeví natolik hezky, že se za ní nemusíte ani trochu stydět. Je samozřejmě v angličtině a na nějakou vícejazyčnost vám z vysoka kašle. Ručně tedy upravujete šablonu, řádek po řádce se snažíte přeložit každé anglické slovíčko. Ale ejhle, jakmile narazíte na komentáře, jsou na ně vaše překladatelné schopnosti krátké. Čeština je natolik vymyšlená, že potřebujete hned čtyři verze – žádné komentáře, 1 komentář, 2-4 komentáře a 5 a více komentářů. Šablona vám ale nabízí jen tři možnosti (viz. níže), co tedy dál?

comments_number('Add Comment &#187;','1 Comment &#187;','% Comments &#187;');

Tímto kódem jsou komentáře obvykle vkládány. Zápis se ale může lišit šablonu od šablonu od šablony, ale po chvíli hledání byste ho měli být schopni najít. Abychom se skamarádili s češtinou, tak vytvoříme vlastní funkci, která bude naše komentáře vkládat. Tu vložíme do souboru functions.php, jež je standardní součástí všech šablon.

function pocetKomentaru(){
	$pocetKomentaru = get_comments_number();
	if(comments_open()){
		if($pocetKomentaru == 0) $komentText = "Žádné komentáře";
		elseif($pocetKomentaru == 1) $komentText = "1 komentář";
		elseif($pocetKomentaru < 5) $komentText = $pocetKomentaru . " komentáře";
		else $komentText = $pocetKomentaru . " komentářů";
		return "<a href='" . get_comments_link() ."'>". $komentText."</a>";
		}
	else return "Komentáře byly vypnuty";
	}

Co se ve funkci děje? Nejdřív zjistíme počet komentářů u příspěvku, slušně se WordPressu zeptáme jestli jsou komentáře povolené a následně podle počtu vrátíme příslušný text. Radujme se a slavme, naše funkce je hotová a plně použitelná. Do kódu šablony stačí vložit:

echo pocetKomentaru();

a komentáře se již zobrazují hezky česky.

Správný plugin si po sobě vždy uklidí

Uživatelé WordPressu zpravidla vědí, že veškeré nastavení jejich blogu včetně nastavení nainstalovaných pluginů se ukládá do MySQL databáze. Nicméně většina z nich žije v mylné představě, že po odinstalaci (= smazání) pluginu se pluginem vytvořená data automaticky odstraní. Takhle to však v reálu nefunguje, čehož si můžou všimnout všichni, kteří se alespoň občas hrabou ve […]

Jak zjednodušit databázové dotazy když nepotřebujete stránkování?

Chystaný WordPress 3.2 se zaměřuje hlavně na optimalizaci a zrychlení načítání webu a v této souvislosti byl objeven docela zajímavý trik. Jde o „neveřejný“ parametr no_found_rows, který může být využit např. ve funkcích query_posts(), WP_Query() či get_posts(), ale skoro nikdo o něm neví a moc se nepoužívá, i když dokáže v mnoha případech zjednodušit některé prováděné […]

Tlačítko pro tweet

WP Tweet Button
http://wordpress.org/extend/plugins/wp-tweet-button/

This plugin easily and fully implements Twitter’s official Tweet Button on your WordPress blog or site. The tweet button can be positioned as you please and can be styled to your delight in the settings page. You can configure individual messages for your posts, use the title of your entry or a default message for tweets.

Uživatelsky konfigurovatelná registrace

Register Plus Redux
http://wordpress.org/extend/plugins/register-plus-redux/

Enhances the user registration process with complete customization and additional administration options.
Register Plus Redux enables the user registration process to be customized in any way, big or small. Is there another field you want users to fill out when registering? Do you want to change the message your users receive after they register? Do you want users to have to verify their email address is legitimate? Do you want to queue up new users to be approved or denied by an administrator? Register Plus Redux can do all that and more.

Tento plugin navazuje na jemu předcházející plugin Register Plus, jehož vývoj byl ukončen v r. 2008.

Konfigurovatelný lightbox

Everything You Ever Wanted To Know About The WordPress Lightbox »

FooBox Image Lightbox
https://wordpress.org/plugins/foobox-image-lightbox/

FooBox was the first lightbox to take responsive layout seriously. Not only does it scale images to look better on phones, but it rearranges it’s button controls to look great in both portrait or landscape orientation.
Works best with our free FooGallery plugin

Lightbox Plus Colorbox
https://wordpress.org/plugins/lightbox-plus/

Lightbox Plus Colorbox permits users to view larger versions of images, simple slide shows, videos and content all in an overlay.

*Alternativy*

FancyBox
http://wordpress.org/extend/plugins/fancy-box/

A tool for displaying images, html content and SWF movies in a Mac-style „lightbox“ that floats overtop of web page.
This plugin uses the jquery implementation of fancybox and makes use of [attr] style selectors by adding a section to the wordpress header. Customizable through settings and CSS.

V případě, že je na stránce vložené video z YouTube, v IE překrývá obrázek ve FancyBoxu. Řešení: do kódu vygenerovaného z YouTube stačí k odkazu na video přidat „?wmode=opaque“.

Simple Lightbox
http://wordpress.org/extend/plugins/simple-lightbox/
http://archetyped.com/tools/simple-lightbox/

Simple Lightbox is a very simple and customizable lightbox that is easy to add to your WordPress website. It also supports themes, so it can be fully integrated with your site’s theme.

WP jQuery Lightbox
http://wordpress.org/extend/plugins/wp-jquery-lightbox/

A drop-in replacement for Lightbox 2 and similar plugins, shedding the bulk of Prototype and Scriptaculous. Improved for mobile devices.

jQuery Colorbox
http://wordpress.org/extend/plugins/jquery-colorbox/
http://www.techotronic.de/plugins/jquery-colorbox/

Yet another Colorbox/Lightbox plugin for WordPress. jQuery Colorbox features 11 themes from which you can choose. See my website. Works out-of-the-box with WordPress Galleries and NextGEN Gallery! (choose no effect in NextGEN settings)

When adding an image to a post or page, usually a thumbnail is inserted and linked to the image in original size. All images in posts and pages can be displayed in a colorbox when the thumbnail is clicked. Images are grouped as galleries when linked in the same post or page. Groups can be displayed in a slideshow.

Individual images can be excluded by adding a special CSS class. jQuery Colorbox can also open linked content (external as well as inline) in a Colorbox.

Demo »

Vkládání Google map

Google Maps made Simple
http://wordpress.org/extend/plugins/wp-gmappity-easy-google-maps/

Point, Click, Map. Build and insert Google Maps into your posts just as easily as you insert images. All WYSIWYG: no JavaScript, no XML, no coding at all.

– No API key needed
– New features
– Fast downloads: visitors to your blog only download one extra file from Google – nothing from you.
– Markers and custom icons
– Routing
– Map Controls
– Completely customizable size and alignment

Project Home, full instructions, and help: http://www.wordpresspluginfu.com/wpgmappity/

*Alternativy:*

Google Maps for WordPress
http://wordpress.org/extend/plugins/google-maps-for-wordpress/

This plugin allows you to easily insert Google Maps into your blog, making use of the new shortCode system in WordPress 2.5. The maps can be configured to offer directions to or from the location, show or hide the zoom/pan controls, show/hide map type (street view, satellite, etc), activate zoom using mouse wheel, and more. PHP5 Required.

MapPress Easy Google Maps
http://wordpress.org/extend/plugins/mappress-google-maps-for-wordpress/

MapPress adds an interactive map to the wordpress editing screens. When editing a post or page just enter any addresses you’d like to map.

The plugin will automatically insert a great-looking interactive map into your blog. Your readers can get directions right in your blog and you can even create custom HTML for the map markers (including pictures, links, etc.)

Vyladění pomocí API »

RomeLuv Google Maps
http://wordpress.org/plugins/romeluv-google-maps-for-wordpress/
demo »

Google Maps on your blog, the easy way: every post can have an address. Instantly add a Map. Build then a category map. Ideal for mapping itineraries.
Map shows all the posts which have the address field filled.
Generates where you want a Global Map with all the posts, placing this global map in a standard WordPress Page via a simple shortcode. Vhodné např. pro zobrazení referencí.

Basic Google Maps Placemark
http://wordpress.org/plugins/basic-google-maps-placemarks/

BGMP creates a custom post type for placemarks (markers) on a Google Map. The map is embedded into pages or posts using a shortcode, and there are settings to affect how it’s displayed. You can create markers that will show up on the map, and set their icons using the Featured Image meta box. When a marker is clicked on, a box will appear and show the marker’s title and description.

How To: Add a Map to WordPress: Plugins, Examples & Advice

Stellar Places
https://wordpress.org/plugins/stellar-places/

Stellar Places is an intuitive plugin for easily creating, managing and displaying locations using Google Maps.