Osobní zkušenosti s bezplatným systémem pro správu webového obsahu Wordpress.
Wordpress je vhodný pro vytváření a správu jednoduchých webových stránek. Je zaměřen zejména na blogování a jednoho uživatele. Vyznačuje se uživatelskou přívětivostí s důrazem na pohodlnou práci s příspěvky, snadnou instalaci a množstvím modulů a témat.
Dokumentace:
Tipy:
Webhosting "zdarma", na kterém je možné provozovat WordPress:
wp-config.php
/**
* Default Language (Czech)
*
* A corresponding MO file for the chosen language must be installed to
* wp-content/languages/ (for example cs_CZ.mo).
*/
define('WPLANG', 'cs_CZ');// PHP Memory Limit
define('WP_MEMORY_LIMIT', '128M');// Base Path
define('WP_SITEURL','http://my-web.com');
define('WP_HOME','http://my-web.com');
.htaccess
výchozí nastavení
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ – [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
Možnosti tvorby vícejazyčného Wordpress webu:
/* Multisite */
define('WP_ALLOW_MULTISITE', true);artprima.cz/1032-jak-rozsirit-wordpress-do-vice-jazyku.html
Více info viz Drupal Taxonomie.
Štítky:
Zdroje informací:
Pluginy:
ToDo:
-----
https://www.competethemes.com/blog/wordpress-post-format-examples/
Yoast SEO – http://www.wplama.cz/10-nejdulezitejsich-funkci-pluginu-wordpress-seo-by...
- http://www.wplama.cz/wordpress-a-seo-pro-zacatecniky-jak-optimalizovat-p...
- http://www.wplama.cz/zaklady-on-page-seo-pro-web-na-wordpressu/
http://www.wplama.cz/seo-pohled-na-rubriky-stitky-co-je-lepsi/ (Kdy vytvářet podrubriky?)
http://www.wplama.cz/7-chyb-kterych-byste-se-meli-pri-pouzivani-wordpres...
http://www.wplama.cz/zmena-nazvu-rubriky-nezarazene/
http://www.wplama.cz/jak-prejmenovat-nebo-odstranit-category-a-tag-v-url...
http://www.wplama.cz/presmerovani-url-adres-pomoci-pluginu-simple-301-re...
Tips:
-----
https://wordpress.org/plugins/social-polls-by-opinionstage/ – ankety, dotazníky, hlasování
Pods:
-----
http://pods.io/docs/code/general-functions/pods-group-add/
Formáty příspěvků:
- http://codex.wordpress.org/Post_Formats (přidání, subtéma filter atd.)
- http://www.wpbeginner.com/wp-themes/what-whys-and-how-tos-of-post-format...
- http://blog.netcorex.cz/wordpress/wordpress-tvorba-sablony-od-a-do-z-10-...
Custom Admin:
-------------
https://wordpress.org/plugins/ag-custom-admin/
https://wordpress.org/plugins/wp-admin-ui-customize/
https://wordpress.org/plugins/orbisius-child-theme-creator/screenshots/
https://wordpress.org/plugins/theme-junkie-custom-css/screenshots/
Vlastní šablona:
----------------
http://blog.netcorex.cz/wordpress/wordpress-tvorba-sablony-od-a-do-z-1-d...
Použití volby Trackbacky (česky zpětné odkazy) vám dá možnost upozornit na váš příspěvek někoho s vlastním blogem, na jehož zápis svým vlastním příspěvkem reagujete nebo ho zmiňujete. Uživatel systému, který trackbacky podporuje, bude na váš zápisek upozorněn. Pokud do trackbacků zadáváte více více webových adres, oddělte je od sebe mezerami.
Jako mnoho dobrých nápadů lze také trackbacky zneužít. Je to ideální nástroj pro šíření spamu, takže mnoho blogů tuto funkci vůbec nepoužívá, resp. jejich správci ji ihned po instalaci deaktivují, protože by v komentářích byly jen nežádoucí odkazy spammovacích botů. Pomoci proti komentářovému spamu může také antispamový filtr Akismet, ale ani on nezvládne vše. Více se o něm dočtete v dalším díle o zásuvných modulech.
Další zaškrtávacím boxem u volby Komentáře & odkazování je rozhodnutí, zdali používat chcete používat pingbacky, nebo ne. Co do výsledného efektu jsou pingbacky velmi podobné trackbackům a snaží se řešit některé jejich problémy. Pingbacky jsou na rozdíl od trackbacků plně automatické. Více o trackbacku a pingbacku naleznete v oficiální dokumentaci.
Úrovně oprávnění (Roles and Capabilities):
Témata vzhledu jsou dostupná zdarma na stránce Free Themes Directory.
Existuje ale i možnost koupit profesionální řešení vzhledu:
Responzivní témata:
Tipy:
Used:
Odovzený vzhled (sub téma) staví na základním tématu vzhledu, čímž vývojářům a designerům šetří mnoho práce.
Výhody:
Dokumentace: Child Themes, Template Hierarchy (Visual Overview image)
/* Theme Name: My subtheme Theme URI: http://theme-web.com (případně web, pro který je šablona vytvářena) Description: Custom theme based on Twenty Ten Author: Name Surname Author URI: http: //author-web.com Template: twentyten Version: 1.0.0 Tags: light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready Text Domain: twentyten-child */ /* Import parent style – deprecated */ @import url("../twentyten/style.css"); /* Theme customization starts here -------------------------------------------------------------- */
<?php
function theme_enqueue_styles() {
$parent_style = 'parent-style';
wp_enqueue_style($parent_style, get_template_directory_uri() . '/style.css');
wp_enqueue_style('child-style',
get_stylesheet_directory_uri() . '/style.css',
array($parent_style)
);
}
add_action('wp_enqueue_scripts', 'theme_enqueue_styles');
?><?php
if (!function_exists("my_function")) {
function my_function($parameter = true) {
echo "My Custom Function";
}
} //endif functions_exists
// Include favicon link to head section
if (!function_exists("favicon_link")) {
function favicon_link() {
echo '<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />' . "\n";
}
add_action('wp_head', 'favicon_link');
} //endif functions_exists
// Get actual stylesheet directory path
require_once(get_stylesheet_directory() . '/my_included_file.php');
?>
Dokumentace:


Návody:
my_theme/
Příklad zobrazení nadpisu:
<?php the_title(); ?>
<?php the_title('<h3>', '</h3>'); ?>Příklad zobrazení "shortcode" (konkrétně plugin Meta Slider):
<?php
// Static homepage and Blog page
if (is_front_page() && is_home()) {
echo do_shortcode("[metaslider id=223]");
}
?>Vlastní "regiony" pro Widgety:
<?php
/**
* Register our sidebars and widgetized areas.
*/
function mytheme_widgets_init() {
register_sidebar(array(
'name' => 'Header Sidebar',
'id' => 'header_sidebar',
'before_widget' => '<div class="header-sidebar">',
'after_widget' => '</div>',
'before_title' => '<h2>',
'after_title' => '</h2>',
));
register_sidebar(array(
'name' => 'Sidebar Top',
'id' => 'sidebar_top',
'before_widget' => '<div class="sidebar-top">',
'after_widget' => '</div>',
'before_title' => '<h2>',
'after_title' => '</h2>',
));
register_sidebar(array(
'name' => 'Sidebar Bottom',
'id' => 'sidebar_bottom',
'before_widget' => '<div class="sidebar-bottom">',
'after_widget' => '</div>',
'before_title' => '<h2>',
'after_title' => '</h2>',
));
}
add_action('widgets_init', 'mytheme_widgets_init');
?><?php
// Header sidebar
if (is_active_sidebar('header_sidebar')) {
dynamic_sidebar('header_sidebar');
}
?><?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('header_sidebar')): ?>
<?php endif; ?><?php
// Header sidebar
if (is_active_sidebar('header_sidebar')) {
dynamic_sidebar('sidebar_top');
dynamic_sidebar('sidebar_bottom');
}
?>Nastavení vlastní délky upoutávky příspěvku:
/** * Limit post text by number of characters but do NOT truncate the last word. * * http://codex.wordpress.org/Template_Tags/the_excerpt * http://codex.wordpress.org/Customizing_the_Read_More */ function mytheme_excerpt($limit, $source = null){ if($source == "content" ? ($excerpt = get_the_content()) : ($excerpt = get_the_excerpt())); $excerpt = preg_replace(" (\[.*?\])",'',$excerpt); $excerpt = strip_shortcodes($excerpt); $excerpt = strip_tags($excerpt); $excerpt = substr($excerpt, 0, $limit); $excerpt = substr($excerpt, 0, strripos($excerpt, " ")); $excerpt = trim(preg_replace('/\s+/', ' ', $excerpt)); $excerpt = $excerpt.'... <a href="'.get_permalink($post->ID).'">'.__('more').' »</a>'; return $excerpt; }
<?php echo mytheme_excerpt(200); ?>
<?php echo mytheme_excerpt(200, 'content'); ?>
Zobrazení 10 poslendích příspěvků z kategorie s ID "3" (zobrazení náhledového obrázku vyžaduje plugin "Get The Image"):
<?php
$recent = new WP_Query();
$recent->query('showposts=10&cat=3');
print '<table class="noborder">';
if($recent->have_posts()): while($recent->have_posts()): $recent->the_post();
print '<tr class="text-box"><td style="padding-right: 20px; vertical-align: top;">';
get_the_image(array('default_size' => 'thumbnail', 'width' => '65', 'height' => '65'));
print '</td><td>';
?>
<h3><a href="<?php the_permalink()?>"><?php the_title(); ?></a></h3>
<?php echo '<p>'. get_excerpt(600) .'</p>'; ?>
<?php
print '</td></tr>';
endwhile;
print '</table>';
else:
endif;
?>wordpress:

Udržování instalační "platformy" usnadňuje začátek při vytváření nového webu.
WordPress Plugins:
Označení modulů:
Administrace:

Typografie:
k,o,s,u,v,z,a,i,až,bez,buď,čím,do,ke,když,na,nad,od,po,pod,pro,před,přes,při,se,tím,ve,za,ze,že,§
Uživatelské rozhraní:
Obsah:
<?php the_field('custom_field_name', 123); ?><?php $variable = get_field('custom_field_name', 123); ?><?php $variable = get_field('custom_field_name'); ?><?php $variable = get_field('custom_field_name', $post->ID); ?>[if field_name]
[each field_name]
<span [once]class="first"[/once]>
{@field_name._img.medium}
</span>
[/each]
<script type="text/javascript" src="...js"></script>
<script>
var $ = jQuery.noConflict();
$('head').append('<link rel="stylesheet" type="text/css" href="...css">');
</script>
[else]
...
[/if][each gallery]
<div class="gallery-item gallery-icon">
<a href="{@gallery._src.large}" data-rel="lightbox-gallery-2">
{@gallery._img.thumbnail}
</a>
</div>
[/each]<?php
$gallery = $obj->field('gallery');
//printf("<pre>%s</pre>", print_r($gallery, TRUE));
if($gallery) {
foreach ($gallery as $item) {
$thumbnail = wp_get_attachment_image($item[ID], 'thumbnail');
//$large = wp_get_attachment_image_src($item[ID], 'large');
//printf("<pre>%s</pre>", print_r($large), TRUE);
$large_src = wp_get_attachment_image_src($item[ID], 'large')[0];
$title = $item[post_title];
echo "<figure class='gallery-item gallery-icon'>";
echo "<a href='$large_src' data-rel='lightbox-gallery-2'>$thumbnail</a>";
echo "<figcaption class='gallery-caption'>$title</figcaption>";
echo "</figure>";
}
}
?><?php
$file = $obj->field('file');
foreach ($file as $item) {
printf("<a href='%s' target='_blank'>%s</a><br />",$item['guid'],$item['post_title']);
}
?>echo do_shortcode('[pods field="field_name"]');echo do_shortcode('[pods]{@field_name}[/pods]');<?php
// Pods – Custom Content Types and Fields
$args = array('post_type' => 'my_type', 'posts_per_page' => 4);
$loop = new WP_Query($args);
while ($loop->have_posts()) : $loop->the_post();
$my_type = pods('my_type', $id);
// the_title();
//echo get_the_title();
echo $my_type->display('name');
echo $my_type->display('my_field');
endwhile;echo do_shortcode('[pods form="1" fields="field_name"]');<?php the_field('custom_field_name'); ?><?php
$custom_field = get_post_meta($post->ID, 'custom_field_name', true);
echo apply_filters('the_content', $custom_field);
?><?php echo types_render_field("custom_field_date", array("style" => "calendar")); ?>

Přílohy:
Navigace:
<!-- Plugin: Next Page -->
<div class="next-page">
<?php
previous_link();
next_link();
parent_link();
?>
</div>
/* Plugin: Next Page */
.next-page .aligncenter {
text-align: center;
}Webové formuláře, dotazníky:
Přístupnost:
Události a plánování:
Export:
SEO – optimalizace pro vyhledávače:
Spam:
Komentáře:
Komunikace a interakce:
<p>[email* your-email placeholder "Váš e-mail"][submit "Odeslat"]</p>
<?php
$contact = '[contact-form-7 id="69" title="Kontaktní formulář"]';
echo apply_filters('the_content', $contact);
?>Efekty:
Reklama:
Marketing:
| Sola Newsletters
| Tribulant NewslettersSociální sítě:
Vzhled:

Zobrazení
RTL (Right-to-Left Language Support):
Témata vzhledu:
Responzivní design:
Obrázky:


Multimédia:
E-shop:
Uživatelé:
Spolupráce:
Automatizace:
Monitoring:
Statisktika:
Výkon:
Zálohování:

Vývoj:
Bezpečnost:
Další užitečné pluginy:
<?php /* Template Name Posts: Bez reklamy */ ?>
Správa více webů:
//E-mail
define('APP_MAIL_FROM_EMAIL_NAME','my@email.com|Me');Tipy:
Obsah je možné publikovat:
Více Wordpress webů je možné jednoduše spravovat (editace, aktualizace, zálohování, klonování atd.) na jednom místě pomocí k tomu určených webových služeb:
Indexace webu:
Odstranění chybového hlášení "404 – Objekt nenalezen!":
Upgrade:
Mobil, prohlížeč, desktop a mikroblog:
Funkce překladu:
if(is_single()) { //If this is a "post" _e('This is a post.'); }
if(is_single()) { //If this is a "post" echo __('This is a post.'); }
the_content(__('Click here to read more'));echo _n('There is a comment' , 'There are comments' , get_comments_number());
_ex('post link' , 'Submit a link');echo _x('post link' , 'A link to the post');printf(__('You have chosen the %s theme.') , the_color());echo sprintf(__('You have chosen the %s theme.') , the_color());
Při vývoji nebo hledání chyb je možné v souboru wp-config.php změnit nastavení WP_DEBUG:
define('WP_DEBUG', true);
@ini_set('display_errors', 1);Generátory kódu:
Příklady použití:
<?php
$args = array(
'posts_per_page' => 1,
'post_type'=> 'page',
'p' => 453 // Page ID
);
$myposts = get_posts($args);
foreach ($myposts as $post) : setup_postdata($post);
the_title();
the_content();
endforeach;
wp_reset_postdata();
?><?php the_title('<h3>', '</h3>'); ?><?php
if (is_page('24')) {
the_widget('WP_Widget_Categories', 'count=1');
}
?>get_the_post_thumbnail($post_id, 'thumbnail'); // Thumbnail get_the_post_thumbnail($post_id, 'medium'); // Medium resolution get_the_post_thumbnail($post_id, 'large'); // Large resolution get_the_post_thumbnail($post_id, 'full'); // Original resolution
| WordPress | Drupal |
|---|---|
| wordpress.org > cs.wordpress.org | drupal.org + cs.po (profiles/…/translations) |
| WordPress | Drupal |
|---|---|
| Nastavení > Zobrazování > Dostupnost pro vyhledávače | Nastavení > Vývoj > Režim údržby No Indexing (custom) |
| Nastavení > Obecné Nastavení > Zobrazování |
Nastavení > Systém > Informace o webu Nastavení > Regionální a jazyková nastavení > Datum a čas Nastavení > Regionální a jazyková nastavení > Jazyky (prefixy) |
| Nastavení > Publikování | Nastavení > Vytváření obsahu > Formáty textu |
| Nastavení > Komentáře | Struktura > Typy obsahu – obrázky cesty, velikosti |
| Nastavení > Média | Nastavení > Média > Styly obrázků Nastavení > Média > Toolkit pro práci s obrázky Nastavení > Média > Systém souborů |
| Nastavení > Trvalé odkazy | Nastavení > Vyhledávání a metadata > Čistá URL (viz modul Pathauto) |
| WordPress | Drupal |
|---|---|
| Localization update | |
| Administration menu – vypnout Toolbar a Overlay |
|
| Nastavení > Trvalé odkazy [obsaženo] | Pathauto |
| UploadPlus : File Name Cleaner | Transliteration |
| TinyMCE Advanced TinyMCE and TinyMCE Advanced Professsional Formats and Styles Paste as Plain Text IFrame Shortcode |
CKEditor – tlačítka + pluginy – čeština – odstranit H1 – formátování zdroje – načítání CSS – IMCE – vynutit prostý text |
| [obsaženo] | Diff – automatické vytváření revizí u všech typů obsahu |
| Auto Submenu | [obsaženo] |
| ImageField Tokens |
Vytvořit webový obsah.
Nastavit vzhled webu.
| WordPress | Drupal |
|---|---|
|
iThemes Security (formerly Better WP Security) |
| WordPress | Drupal |
|---|---|
| Next Page | Book [obsaženo] Main menu pager (sandbox) |
| Related Posts by Zemanta | |
| Automatic NBSP | Zalomení | Custom filter |
| BackWPup Free – WordPress Backup Plugin | Backup and Migrate |
| (Attachments | WP Attachments) | [obsaženo] |
| … | … |
| [obsaženo] | Multiupload Imagefield Widget |
| Responsive Lightbox | Colorbox |
| Child Theme Configurator | Sweaver |
| Custom Menu Wizard Widget | Menu Block |
| Gallery formatter | |
| [obsaženo] | Video Embed Field | MediaElement |
| (Query Wrangler) | Views |
| Meta Slider | FlexSlider Views Style |
| WordPress SEO by Yoast | SEO Checklist (Metatag, Yoast SEO, XML Sitemap) |
| Scroll Back To Top | Back To Top |
| Crafty Social Buttons | Service links | Social media | Easy Social | Social Share |
| WP Super Cache | Boost |
| (Pods – Custom Content Types and Fields) | [obsaženo] |
| (SEO Auto Links | SEO Smart Links | SEO Auto Links & Related Posts | Automatic SEO Links) | |
| [obsaženo] | Video Embed Field | MediaElement |
| Gallery Formatter | |
| [obsaženo] | (Multi-level Navigation Plugin) | Superfish |
| Wordpress | Drupal |
|---|---|
| Broken Link Checker |
| Wordpress | Drupal |
|---|---|
| Breadcrumb | Really Simple Breadcrumb | Breadcrumb NavXT | |
| (kontrola 404.php, search.php, category.php, tags.php) |
| WordPress | Drupal |
|---|---|
| Quick Adsense |
| WordPress | Drupal |
|---|---|
| Google Analytics Dashboard for WP |
| Příloha | Velikost |
|---|---|
| Drupal | cs.po (custom) | 456.22 KB |
| Drupal | No Indexing (custom) | 799 bajtů |