Domanda

Come si può avere in modo che la home page del sito mostrerà solo il primo X (diciamo 300) le parole del post?

Ma senza l'utilizzo di estratti tag, o la mano "di più" riempiti? Sto cercando un plugin / hack per WP 2.9 e successivi.

mi sono imbattuto in diverse soluzioni fino ad ora, ma spero per una soluzione consigliata.

Le sfide sono venuto una croce finora:

  • Che cosa succede nel caso in cui un tag (ad esempio) inizia sulla parola 295, e termina dopo 301 parola?
  • Può essere possibile avere un X diversa per la home page, page tag, pagina di categoria -? E così via
  • Può il formato del testo essere conservato? (Tutte le immagini e formattazione del testo)?
  • Avere il plugin prendere la minor quantità di ricorsi dal server.
È stato utile?

Soluzione

Modifica del conteggio delle parole sulla home page è facile:

if( is_home() )
  add_filter( 'excerpt_length', create_function( '', 'return 300;' ) );

Just replicare che il codice e modificare il controllo condizionale per aggiungere questo ad altre pagine. L'altra opzione è quella basta inserire il codice sulla pagina del modello (home.php, tag.php, ecc), in modo da sapere che sta per essere impostato sulla pagina corretta.

Utilizzando the_excerpt() metterà a nudo automaticamente i codici brevi e html dal contenuto se non c'è alcun riassunto in dotazione. È possibile rimuovere questi filtri, ma rende molto più difficile fare i conteggi di parole quando si aggiunge il markup nel mix. Se si desidera che la formattazione / testo / immagini conservate, questo è ciò che il tag more è per. E 'inserito manualmente perché è troppo difficile da capire automaticamente in tutti i casi in cui la pausa dovrebbe andare.

Altri suggerimenti

È possibile utilizzare la Fancy Estratto plugin per wordpress per questo e modificarlo un po '. Conserva lo stile, lo fa parola di conteggio. Hai solo bisogno di modificare questo un po 'per avere la tua parola-count e forse se non ti piace l'ellissi di modificare il finale pure.

se avete solo bisogno le prime 300 parole del contenuto si può facilmente ottenere con

wp_trim_words( $post->post_content, 300, '');
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a wordpress.stackexchange
scroll top