
Zobrazení počtu slov v příspěvku | WordPress
Pokud by vás zajímalo, kolik slov jste napsali v příspěvku, nebo na celé stránce, mám zde jednoduchý návod použití bez pluginu. V praxi můžete tuto funkci vidět třeba na této stránce: pod titulkem tohoto příspěvku je lišta s informacemi o článku, ve které je právě počet slov
. Klidně si to přepočítejte, ale pokud se vám nechce, můžete použít online počítadlo. Celkový počet slov v příspěvcích na této stránce můžete vidět vpravo hned nad vyhledáváním.
Zobrazení počtu slov v příspěvku
1. Do souboru functions.php vložte následující kód:
[php]
function mdv_post_word_count($single = false) {
global $wpdb, $id;
$now = gmdate(„Y-m-d H:i:s“,time());
if ($single) $query = „SELECT post_content FROM $wpdb->posts WHERE ID = ‚$id'“;
else $query = „SELECT post_content FROM $wpdb->posts WHERE post_status = ‚publish‘ AND post_date < '$now'";
$words = $wpdb->get_results($query);
if ($words) {
foreach ($words as $word) {
$post = strip_tags($word->post_content);
$post = explode(‚ ‚, $post);
$count = count($post);
$totalcount = $count + $oldcount;
$oldcount = $totalcount;
}
} else {
$totalcount=0;
}
echo number_format($totalcount);
}
?>
[/php]
2. Na potřebné místo v šabloně (nejčastěji single.php, index.php, archive.php) vložte toto vyvolání funkce:
[php]
[/php]
Zobrazení počtu slov v celé stránce
Předcházející krok č. 1. zůstává stejný, jen na požadované místo vkládejte tento kód:
[php]
[/php]
K čemu je tato funkce dobrá? Například čtenář má dopředu představu o délce příspěvku.
Užitečné, na jednom webu jsem ještě viděl vypočítanou průměrnou délku přečtení (na základě znaků). A dokonce i prohnané přes nějaký kompilátor řeči a nahrané audio. Párkrát jsem hledal, jestli by něco takového šlo dělat automaticky, ale na nic použitelného jsem nenarazil.
A jen dvě technické poznámky – ve zdrojáku se ti špatně vypisuje zobák >
Pokud bys chtěl být jo dokonalý, tak content je ještě třeba prohnat filtrem
$content = apply_filters(‚the_content‘, $content);
to přidá formátování (který se v tomto případě stejně hned odstraní) a zpracuje shortcode, které by u někoho mohli rozdíl v počtu slov vyvolat. Ale u obyčejných blogpostů to bude jedno.
Děkuji za komentář. Nepoužíval jsi náhodou něco podobného ve své předchozí šabloně?
Průměrná délka přečtení může být taky hodně zajímavá funkce.
Děkuji za upozornění, zobáčky jsem opravil (vzniklo to přepnutím z Textu do Editoru).
V tomto případě content nechám bez filtru, ale určitě je dobré, že jsi se o tom zmínil.