WP-ShowHide

Popis

WP-ShowHide skryje část příspěvku za tlačítkem, takže delší text – tisková zpráva, seznam změn, spoiler – nezabere celou stránku, dokud si jej čtenář nevyžádá. Na tlačítku je uvedeno, kolik slov skrývá, což je způsob, jakým Engadget postupuje u svých tiskových zpráv. Příklad použití: [showhide type="pressrelease"]Tisková zpráva se vloží sem.[/showhide]

Není třeba nic konfigurovat a neexistuje žádná obrazovka s nastavením. Každá možnost, kterou plugin nabízí, je atributem shortcode, který ji vytváří, takže dvě přepínací tlačítka ve stejném příspěvku se mohou chovat odlišně.

Funkce

  • Jeden zkrácený kód, [showhide], který lze v příspěvku nebo na stránce použít libovolný početkrát
  • Blok „Zobrazit/Skrýt“ pro editor bloků, který obsahuje obsah, který skrývá, ve formě běžných bloků a zobrazuje přesně to, co zobrazuje shortcode
  • Tlačítko namísto odkazu, s atributy aria-expanded a aria-controls, takže přepínání funguje pomocí klávesnice a je správně načteno čtečkou obrazovky
  • Štítky, které počítají slova, která skrývají
  • Žádné jQuery a vůbec žádný skript na stránce, která nepoužívá ani zkrácený kód, ani blok
  • Vlastní události DOM při každém přepnutí, pro motivy, které na to chtějí reagovat

Dary

Většinu svého volného času jsem věnoval tvorbě, aktualizaci, údržbě a podpoře těchto pluginů. Pokud se vám moje pluginy opravdu líbí a mohli byste mi věnovat pár dolarů, velmi bych to ocenil. Pokud ne, můžete je klidně používat bez jakýchkoli závazků.

Použití

  1. Ve výchozím nastavení bude obsah uvnitř zkráceného kódu „showhide“ skrytý.
  2. Příklad: [showhide]Zde se vkládá obsah tiskové zprávy.[/showhide]
  3. Výchozí hodnoty: [showhide type="pressrelease" more_text="Zobrazit tiskovou zprávu (o %s slovech více)" less_text="Skrýt tiskovou zprávu (o %s slovech méně)" hidden="yes"]

  4. V příspěvku nebo na stránce můžete mít více částí obsahu, které lze zobrazit či skrýt, a to pouhým vytvořením nového typu.

  5. Příklad: [showhide type="links" more_text="Zobrazit odkazy (%s slov navíc)" less_text="Skrýt odkazy (%s slov méně)"]Odkazy se vloží sem.[/showhide]

  6. Pokud chcete nastavit výchozí viditelnost na „zobrazit“.

  7. Příklad: [showhide hidden="no"]Zde se vkládá obsah tiskové zprávy.[/showhide]

Blokový editor

K dispozici je také blok „Zobrazit/Skrýt“, který najdete v nástroji pro vkládání v sekci „Text“. Obsahuje obsah, který skrývá, ve formě běžných bloků – odstavců, obrázků, čehokoli –, takže tento obsah lze psát a upravovat přímo na místě, místo aby se zadával do pole jako značkovací jazyk, a během úprav zůstává viditelný. Panel Zobrazit/Skrýt v postranním panelu obsahuje stejné čtyři možnosti jako atributy zkráceného kódu: typ, popisky dvou tlačítek a to, zda se blok zpočátku skrývá.

Zkrácený kód se nezměnil a je i nadále podporován. Není označen jako zastaralý, příspěvky, které jej používají, není třeba upravovat; blok i zkrácený kód generují stejný kód HTML a jeden příspěvek může obsahovat obojí.

  1. Vzhled obsahu můžete upravit pomocí CSS, které plugin generuje. Zde je ukázka vygenerovaného HTML kódu. Vezměte na vědomí, že „pressrelease“ je výchozí typ.
<div id="pressrelease-link-1" class="wp-showhide sh-link pressrelease-link sh-hide">
  <button type="button" class="sh-toggle" aria-expanded="false" aria-controls="pressrelease-content-1"
          data-sh-more="Show Press Release (4 More Words)"
          data-sh-less="Hide Press Release (4 Less Words)">Show Press Release (4 More Words)</button>
</div>
<div id="pressrelease-content-1" class="wp-showhide sh-content pressrelease-content sh-hide" hidden>Content</div>
  1. Na základě výše uvedeného příkladu můžete ve svém CSS použít následující styly:
.sh-link { }  
.sh-toggle { }  
.sh-content { }  
.pressrelease-link { }  
.pressrelease-link.sh-hide .sh-toggle { }  
.pressrelease-link.sh-show .sh-toggle { }  
.pressrelease-content { }  
.pressrelease-content.sh-hide { }  
.pressrelease-content.sh-show { }
  1. Každé přepnutí vyvolá tři události na prvku .sh-link, přičemž všechny tři se šíří nahoru, takže jeden posluchač v dokumentu pokryje všechna přepnutí na stránce: sh-link:more při otevření přepínače, sh-link:less při jeho zavření a sh-link:toggle při obou událostech.

Snímky obrazovky

Bloky

Tento plugin poskytuje 1 blok.

  • Show/Hide Hides its content behind a button that counts the words it is hiding.

Instalace

  1. Nainstalujte a aktivujte plugin.
  2. Obsah, který chcete skrýt, vložte mezi značky [showhide] a [/showhide], nebo v editoru přidejte blok Zobrazit/Skrýt a vložte do něj požadovaný obsah.

Není třeba nic konfigurovat a neexistuje žádná obrazovka s nastavením. Každá možnost, kterou plugin nabízí, je atributem zkráceného kódu nebo ovládacím prvkem v postranním panelu bloku, takže dvě přepínací tlačítka ve stejném příspěvku se mohou chovat odlišně.

Nejčastější dotazy

Jak mohu změnit text tlačítka?

V shortcode předejte more_text a less_text. %s v kterémkoli z nich bude nahrazeno počtem slov, která mají být skryta, a popisek, který neobsahuje %s, se použije přesně tak, jak je napsán.

Mohu odstranit stylový list tohoto pluginu?

Ano. Jedná se o dvě pravidla, která jsou zařazena do fronty pod identifikátorem wp-showhide, takže je z vašeho šablony vyřaďte z fronty:

add_action( 'wp_enqueue_scripts', function () {
    wp_dequeue_style( 'wp-showhide' );
}, 20 );

Přepínač bude i nadále fungovat; tlačítko bude prostě vypadat jako tlačítka ve vašem motivu, nikoli jako textový odkaz.

Proč mi stejný typ vrátil duplicitní ID?

To už neplatí. Od verze 2.0.0 si první přepínač daného typu v příspěvku zachovává své původní ID, zatímco následující přepínače mají na konci příponu -2, -3 a tak dále. Pokud používáte stejný typ vícekrát, stylizujte jej spíše pomocí třídy než pomocí ID.

Ukládá tento plugin nějaké údaje do mé databáze?

Jeden řádek, a je to opravdu malé. wp_showhide_version zaznamenává verzi, která byla naposledy spuštěna, aby aktualizace věděla, z jaké verze se provádí. Neobsahuje žádný řádek s nastavením, protože žádná nastavení neexistují. Odstranění pluginu z obrazovky „Pluginy“ odstraní tento řádek jak na jednotlivém webu, tak na všech webech v síti.

Recenze

13. 4. 2025
Thanks for the free plugin and support. it doesn’t work woth the latest wp. the hided side can not be seen after click the show. it is only active when logged in to wp-admin. please update it.
9. 2. 2022
I don’t understand why developers take the time to write a plugin and then don’t bother to provide detailed documentation. Looks like it might do what I want but I give up trying and notice a lot of support requests have not been replied to.
30. 1. 2021
Simple and working plugin. Tried several more, but they had issues with filter Im using on my page, this one worked like a charm. Additionally I would recommend to add an option to show hide button on the bottom of displayed text.
23. 12. 2020 1 odpověď
Love this plugin. Had a little panic that it wasn’t going to work with Wordpress 5.6 and php 7.4, but it does. Please keep maintaining this plugin! (I just sent my donation.)
20. 9. 2020
It’s a great idea and could be very useful but it doesn’t work on the current WP version. The site I was trying to use this on uses WP 5.5.1, with plugins Akismet, Feed Them Social, Feedzy, and Lightbox. I figure this plugin may be incompatible with one of those plugins or this current version of WP. The link doesn’t do anything when clicked and the wrong text is showing up. Even though I changed the shortcode to say ‚MORE INFO‘ it still said Press Release along with the additional number text and a number next to it. I didn’t see settings anywhere for this plugin.
Přečtěte si všech 42 recenzí

Autoři

WP-ShowHide je otevřený software. Následující lidé přispěli k vývoji tohoto pluginu.

Spolupracovníci

Plugin „WP-ShowHide“ byl přeložen do 6 jazyků. Děkujeme všem překladatelům za jejich pomoc.

Přeložte “WP-ShowHide” do svého jazyka.

Zajímá vás vývoj?

Prohledejte kód, podívejte se do SVN repozitáře, nebo se přihlaste k odběru protokolu vývoje pomocí RSS.

Přehled změn

3.0.0

  • AKTUÁLNÍ ZPRÁVA: Vyžaduje WordPress 6.8 a PHP 8.2, místo dosavadních verzí 6.0 a 7.4.
  • AKTUÁLNÍ ZPRÁVA: Byly odstraněny globální funkce showhide_scripts(), showhide_js() a showhide_shortcode(). Jednalo se o interní funkce; plugin si registruje vlastní shortcode a soubory.
  • AKTUÁLNÍ ZPRÁVA: Třídy ShowHide a ShowHide_Template se nyní nazývají WP_ShowHide a WP_ShowHide_Template.
  • NOVINKA: Do editoru bloků byl přidán blok „Zobrazit/Skrýt“, který uchovává skrytý obsah ve formě běžných bloků. Zkratka [showhide] zůstává beze změny a je i nadále podporována – není označena za zastaralou, příspěvky, které ji používají, není třeba upravovat a obě varianty generují stejný kód.
  • NOVINKA: Přepracováno do includes/, v rámci tříd WP_ShowHide, WP_ShowHide_Template a WP_ShowHide_Options.
  • NOVINKA: Přidán řádek wp_showhide_version a soubor uninstall.php, který jej odstraní na jednom webu i v celé síti.
  • NOVINKA: Skript pro přepínání a stylový list jsou nyní samostatné soubory, js/wp-showhide.js a css/wp-showhide.css, takže je prohlížeč uloží do mezipaměti pouze jednou, místo aby je na každé stránce načítal přímo z kódu.
  • NOVINKA: Byla přidána sada testů PHPUnit a vitest a také CI pomocí GitHub Actions.
  • ZMĚNA: Oba prvky, které shortcode vykresluje, nyní nesou třídu wp-showhide vedle tříd, které měly již dříve. Nic nebylo přejmenováno ani odstraněno, takže stávající CSS šablony zůstává beze změny.
  • OPRAVENO: hidden="No" způsobovalo, že se obsah zůstal sbalený, místo aby se rozbalil. Atribut se nyní porovnává bez rozlišování velkých a malých písmen, takže funguje jakýkoli zápis no.
  • OPRAVENO: Při přímém volání souboru wp-showhide.php se soubor spustil mimo WordPress, místo aby se ukončil.