14 Užitočné kódy pre GeneratePress

 

Tu je niekoľko užitočných častí kódu. Sú to funkcie, filtre a CSS, ktoré používam alebo som niekedy potreboval pre šablónu GeneratePress, ktorú používam a odporúčam.

Niektoré z nich pochádzajú z fóra podpory, ktoré je nevyčerpateľným zdrojom riešení, z jeho dokumentácie a iné z dotazov a vyhľadávania podpory.

Zobrazenie dátumu a času aktualizácie pri položkách vedľa dátumu uverejnenia

Tento filter zobrazuje dátum a čas aktualizácie záznamov GeneratePress. Závisí to od toho, ako ste nastavili dátum v Nastavenia/Všeobecné/Formát dátumu/Vlastné. V tomto prípade to vyzerá takto: d/m/Y : H:i

/* Fecha y Hora de PUBLICADO Y ACTUALIZADO EN META POST */
add_filter( 'generate_post_date_output', function( $output, $time_string ) {
    $time_string = '<time class="entry-date published" datetime="%1$s" itemprop="datePublished">%2$s</time>';

    if ( get_the_date() !== get_the_modified_date() ) {
        $time_string = '<time class="entry-date published" datetime="%1$s" itemprop="datePublished">Publicado: %2$s</time> | <time class="entry-date updated-date" datetime="%3$s" itemprop="dateModified">Actualizado: %4$s | </time>';
    }

    $time_string = sprintf( $time_string,
        esc_attr( get_the_date( 'c' ) ),
        esc_html( get_the_date() ),
        esc_attr( get_the_modified_date( 'c' ) ),
        esc_html( get_the_modified_date() )
    );

    return sprintf( '<span class="posted-on">%s</span> ',
        $time_string
    );
}, 10, 2 );

Animované podčiarknuté odkazy

CSS na vytvorenie animovaného efektu pre textové odkazy, ako vidíte na nasledujúcom obrázku:

14 Užitočné kódy pre GeneratePress 0

/* Subrayado de enlace animado con color de fondo */
p a{
  font-weight: bold;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fdede7), to(#fdede7));
  background-image: linear-gradient(to bottom, #fdede7 0%, #fdede7 100%);
  background-repeat: no-repeat;
  background-size: 100% 00%;
  background-position: 0 111%;
  -webkit-transition: background-size .25s ease-in;
  transition: background-size .25s ease-in;
  padding-left: 2px;
  padding-right: 2px;
  border-bottom: 2px solid #ec4911;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

p a:hover{
  background-size: 100% 100%;
}

V položkách background-image a border-bottom môžete zmeniť farby.

Budete musieť sledovať správanie odsekov, tlačidiel a iných prvkov, ktoré obsahujú odkazy, aby ste ich upravili tak, aby nič nebolo na svojom mieste.

Autorom kódu je Kyle Van Deusen, ktorý má okrem Admin Baru aj zaujímavý blog s názvom Generatetweaks, kde publikuje rôzne zaujímavé časti kódu a šablóny pre GeneratePress a GenerateBloks, ako napríklad tento tmavý režim pre GP a GB.

Odstránenie čiarok medzi značkami

To je všetko.

Ak nechcete, aby sa medzi značkami zobrazovali čiarky, nebudú sa s týmto filtrom zobrazovať.

Je to veľmi užitočné, ak sa rozhodnete štítky farebne odlíšiť alebo použiť iný symbol na ich oddelenie.

/* QUITA LAS COMAS EN LAS ETIQUETAS */
add_filter('generate_term_separator', function($separator, $tags){
	return " ";
}, 10, 2);

Pridanie farby pozadia do kategórií a značiek

Pomocou tohto CSS môžete pridať ľubovoľnú farbu všetkým kategóriám a/alebo všetkým značkám.

CSS v príklade by ich zobrazilo takto:

14 Užitočné kódy pre GeneratePress 1
/* Categorías y colores */
.entry-meta .cat-links a {
    padding: 3px 5px;
    font-size: 17px;
	background-color: #B50000;
	border-radius: 5px;  
    color: #FFF	
		
}
/* Etiquetas y colores */  
.entry-meta .tags-links a {
	padding: 3px 5px;
	font-size: 17px;
	background-color: #006a05;
	border-radius: 5px;  
    color: #FFFF	
}

/* Espacio entre línea de categorías y etiquetas */
.cat-links {
    margin-bottom: 10px;
}

Zobrazenie inej farby pozadia pre každú kategóriu alebo štítok

Pomocou tohto CSS budete môcť každej kategórii priradiť inú farbu. Aby ste to mohli urobiť, budete musieť napísať takýto kúsok pre každú kategóriu alebo značku, ktorú chcete upraviť. V prvom príklade je použitá kategória"wordpress" s modrým pozadím a bielym textom. V druhom príklade je použitá značka"blog" s oranžovým pozadím a bielym textom.

A toto je výsledok..:

14 Užitočné kódy pre GeneratePress 2
/* Mostrar un color diferente para cada categoría o etiqueta */
#main span.cat-links a[href*="wordpress"] {
    background-color: #005ca5;
    color: white;
}


#main span.tags-links a[href*="blog"] {
    background-color: #d47e00;
    color: white;
}

Zobrazenie iba rokov vo widgete archívu

Táto funkcia spôsobí, že rozbaľovací zoznam widgetu archívu bude zobrazovať iba roky namiesto mesiacov. Funguje pre akúkoľvek šablónu, pretože pôsobí na natívny widget WordPress. Užitočné, ak je váš blog veľmi starý a rozbaľovací zoznam mesiacov je už príliš dlhý. V príklade sa zobrazuje s počtom uverejnených príspevkov.

/* MOSTRAR SOLO AÑOS EN ARCHIVO WIDGET */
function my_limit_archives( $args ) {
    $args['type'] = 'yearly';
    return $args;
}

add_filter( 'widget_archives_args', 'my_limit_archives' );
add_filter( 'widget_archives_dropdown_args', 'my_limit_archives' );
10 Užitočné kódy pre GeneratePress

Jednoduché čítanie panela priebehu bez zásuvného modulu

Existuje niekoľko pluginov na pridanie lišty priebehu čítania vo WordPress a tiež doplnkov pre Elementor, ale s trochou kódu a filtrom GeneratePress Elements sa to dá ľahko urobiť oveľa ľahšie. Autorom tohto kódu je Somnath Sahu.

*Pretento príklad musíte použiť verziu GeneratePress Premium.

Najprv vytvoríme filter s prvkami pomocou tohto kódu.

<div class="progress-container">
    <div class="progress-bar" id="myProgressBar"></div>
</div>

<script>
window.onscroll = function() {myFunction()};
function myFunction() {
  var winScroll = document.body.scrollTop || document.documentElement.scrollTop;
  var height = document.documentElement.scrollHeight - document.documentElement.clientHeight;
  var scrolled = (winScroll / height) * 100;
  document.getElementById("myProgressBar").style.width = scrolled + "%";
}
</script>

Nastavíme ju na pozíciu wp_head a zobrazíme ju v časti Záznamy / Všetky záznamy.

Ak ho chcete zobraziť, jednoducho pridajte tento CSS do svojej podriadenej témy alebo do časti Vlastné/Dodatočné CSS a naštýlujte ho podľa svojho blogu.
/*** Barra de progreso de lectura - Progress bar **/
.progress-container {
  width: 100%;
  height: 8px;
  background: #ccc;  /** Change Progress bar background color **/
}

.progress-bar {
  height: 8px;
  background: #a70404; /** Change Progress bar color **/
  width: 0%;
  position:fixed;
  z-index:999;
}

A takto sa tento kód zobrazí po zmene farby na zelenú.

V hornej časti obrazovky sa zobrazí ukazovateľ priebehu, ktorý vás bude sprevádzať pri posúvaní nadol a klesať pri posúvaní nahor.

Zmena loga len na konkrétnej stránke

Raz som to potreboval a raz som to našiel na webovej stránke Davida Lanaua.

Filter zobrazí iné logo len na stránke, ktorú určíte.

Použil som ho na umiestnenie iného loga na stránku kategórie, ktorá zoskupovala obsah konkrétnej témy.

add_filter( 'generate_logo','tu_custom_about_logo' );
function tu_custom_about_logo( $logo )
{
 	// Si estamos en la página servicios, vamos a poner nuestro logo personalizado para esta página
 	if ( is_page( 'servicios' ) )
 	 	return 'PON LA URL DEL LOGO AQUÍ';

 	// Y SI NO, PON EL LOGO GENERAL
 	return $logo;

 }

Skrytie súrodeneckého panela v mobilnej verzii

Ak patríte k tým, ktorí stále používajú bočné panely a upustili od stránok AMP, takže používate natívnu mobilnú verziu GeneratePress s bočným panelom, pomocou tohto CSS ho môžete skryť len pre mobilnú verziu.

V takom prípade ho môžete pridať do súboru štýlov v detskej téme alebo z Vlastné / Ďalšie CSS.

Skryť pravý bočný panel

@media(max-width: 768px) {
    #right-sidebar {
        display: none;
    }
}

Skryť ľavý bočný panel

@media(max-width: 768px) {
    #left-sidebar {
        display: none;
    }
}

Skryť oboje

Skryte dva bočné panely.

@media(max-width: 768px) {
    #right-sidebar, #left-sidebar {
        display: none;
    }
}

Zobrazenie zobrazených obrázkov v slučke vľavo a vpravo

Ak používate tradičnú šablónu GeneratePress, napríklad Marketer alebo podobnú, pomocou tohto kódu môžete zobrazovať zobrazený obrázok striedavo vľavo alebo vpravo v slučke.

.post-image-aligned-left .type-post:nth-child(even) .inside-article .post-image {
    margin-left: 2em;
    float: right;
    text-align: right;
}

Tento kód som našiel na stránke aquigeneratepress.com, kde nájdete aj ďalšie užitočné triky. A tu je výsledok:

14 Užitočné kódy pre GeneratePress 3

Prispôsobenie tlačidla "Čítať viac"

Podobne ako vyššie, toto CSS je určené pre tlačidlo "Čítať viac". Je to ten, ktorý tu používam a umiestňuje ho napravo pod úryvok na titulnej stránke.

a.read-more {
display: inline-block;
color: white !important;
padding: 10px;
border-radius: 10px;
float:right
}

Štýl stránkovania záznamu

Filter a trochu CSS na získanie tohto vzhľadu pre stránkovanie záznamov na titulnej stránke. Odtiaľto si ho môžete upraviť podľa svojich predstáv.

14 Užitočné kódy pre GeneratePress 4

Najprv je potrebné nahradiť slová Previous a Next symbolmi << a >> pomocou tohto filtra, ktorý môžete pridať do súboru functions.php vašej detskej témy alebo pomocou Code Snippet.

/* Cambia ANTERIOR y SIGUIENTE por << y >> en navegación */
add_filter( 'generate_previous_link_text', function() {
	return '<<';
} );

add_filter( 'generate_next_link_text', function() {
	return '>>';
} );

A potom CSS, pridané rovnakým spôsobom ako v predchádzajúcich prípadoch

/* Paginacion entradas */
#nav-below {
    text-align: center;
}
.paging-navigation .nav-links>* {
	  font-size: 20px;
    padding: 7px 10px;
    background-color: #870000;
    color: white;
    border-radius: 4px;
}
.paging-navigation .nav-links span.page-numbers.current {
    background: red;
    color: #ffffff;
}
a.next.page-numbers > span {
    display: none;
}

Vycentrovanie poľa vyhľadávača

Natívny vyhľadávač GeneratePress je trochu chabý, tu trochu CSS na prispôsobenie zariadeniam a jeho vycentrovanie.

/* Centrar caja de búsqueda en menú principal */
form.search-form.navigation-search.nav-search-active {
    width:50%;
    left:50%;
    transform:translateX(-50%)
}

 /* Responsive caja de búsqueda en móvil - tablet y PC */
@media (max-width: 768px) {
    /* CSS in here for mobile only */
        form.search-form.navigation-search.nav-search-active {
        width:100%;
        left:50%;
        transform:translateX(-50%)
    }
}
@media (min-width: 769px) and (max-width: 1024px) {
    /* CSS in here for tablet only */
    form.search-form.navigation-search.nav-search-active {
    width:100%;
    left:50%;
    transform:translateX(-50%)
    }

    .inside-navigation {
        align-items: flex-end !important;
        flex-direction:column-reverse;
    }
}
@media (min-width: 1025px) {
    /* CSS in here for desktop only */
        form.search-form.navigation-search.nav-search-active {
        width:40%;
        left:50%;
        transform:translateX(-50%)
    }
}

Veľkosť textu kategórií a štítkov

Ak zobrazíte kategórie a značky pod príspevkami, pridaním tohto CSS môžete zmeniť veľkosť a pokračovať v pridávaní CSS, aby ste im dali požadovaný štýl. Všetky triedy na ich úpravu nájdete v dokumentácii alebo v samotnom CSS, ale ak to nechcete komplikovať a chcete len zmeniť veľkosť, tu to nechám.

.entry-meta .cat-links a {
    padding: 3px 5px;
    font-size: 20px;
}
.entry-meta .tags-links a {
    padding: 3px 1px;
  font-size: 20px;

}