Cum să Inserezi Shortcode-uri în Temă?

15 apr. 2012, 20:47:25
Vizualizări: 19.7K
Voturi: 1

Am un plugin pentru blocarea conținutului.

Pentru blocarea conținutului, folosesc acest shortcode:

[wp-like-locker] Conținutul tău blocat aici... [/wp-like-locker]

și trebuie să blochez fiecare articol de pe blogul meu. Cum aș putea să inserez aceste shortcode-uri în temă și să blochez conținutul:

Vă mulțumesc foarte, foarte, foarte mult pentru răspuns și timp!

0
Toate răspunsurile la întrebare 3
1

Puteți integra shortcode-uri direct într-o temă folosind funcția do_shortcode. http://codex.wordpress.org/Function_Reference/do_shortcode

echo do_shortcode('[wp-like-locker] Conținutul blocat aici... [/wp-like-locker]');

Cel mai probabil veți dori să înlocuiți textul hardcodat "Conținutul blocat aici..." cu funcția care preia conținutul din editor, cum ar fi the_content http://codex.wordpress.org/Function_Reference/the_content

Ar putea arăta astfel:

  // bucla
  $content = get_the_content();
  echo do_shortcode('[wp-like-locker]' . $content .  '[/wp-like-locker]');
15 apr. 2012 21:26:34
Comentarii

...sau apelează direct funcția atașată acelui shortcode și transmite $content către ea; nu este nevoie de overhead suplimentar de la do_shortcode...

onetrickpony onetrickpony
9 mai 2012 00:13:02
0

Ar fi mai rapid și mai curat să scrii o funcție pentru asta și să o pui în functions.php. Ar arăta astfel (netestat):

add_action( 'the_content', 'wpse49094_lock_content' );
function wpse49094_lock_content( $content ) {
    if( in_the_loop() ) {
        $content = do_shortcode( 'do_shortcode(\'[wp-like-locker]\' . $content .  \'[/wp-like-locker]\'');
        return $content;
    }
}
8 mai 2012 23:50:25
1

puteți folosi do_shortcode() pentru a evalua shortcode-ul vostru.

puteți introduce codul de mai jos în fișierul single.php din tema WordPress. Acesta se va aplica tuturor postărilor care folosesc șablonul implicit.

   <?php 
    get_template_part( 'content', 'single' ); 

echo do_shortcode('[wp-like-locker]');

echo "Conținutul blocat";

echo do_shortcode('[/wp-like-locker]');

?>
15 apr. 2012 21:26:35
Comentarii

Acest cod este greșit. Verifică pagina Codex pentru do_shortcode() pentru a vedea cum se gestionează shortcodurile deschise-închise.

mrwweb mrwweb
8 mai 2012 23:51:09