50 filtri di WordPress filtri 21-30

Nelle parti precedenti di questa serie, abbiamo esaminato 30 filtri WordPress. In questo tutorial, vedremo un altro gruppo di essi e faremo degli esempi con ciascuno di essi.

Cominciamo!

Filtro della query di ricerca

La ricerca è una delle caratteristiche più importanti di WordPress (e per qualche motivo è rimasta un po 'primitiva). Con il posts_search filtro, puoi scimmiottare con la ricerca SQL.

Esempio: inserimento di post protetti da password nei risultati di ricerca

Supponiamo che utilizzi i post per le informazioni dei tuoi clienti e imposti le password per ogni post e invii la password per il tuo cliente. 

Per consentire ai clienti di cercare tra i post e trovare la propria pagina, puoi utilizzare lo snippet di codice seguente per consentire ai visitatori di trovare post protetti da password nei risultati di ricerca:

prefisso posts.post_password = ")"; $ search = str_replace ($ pattern, ", $ search); return $ search; // Esempio di origine: http://wpsnipp.com/index.php/functions-php/include-password-protected-posts-in -search-results /?>

Se gli utenti del tuo blog sono registrati, non devi usare il codice di cui sopra: possono effettuare ricerche tramite post protetti da password purché abbiano effettuato l'accesso, ma ovviamente non possono ancora vedere il contenuto a meno loro inseriscono la password.

Impostazione della qualità di compressione per le immagini caricate

Per impostazione predefinita, WordPress tenta di comprimere le immagini durante il ridimensionamento per le dimensioni dell'immagine definite. Con il wp_editor_set_quality filtro, è possibile modificare o disabilitare il tasso di compressione.

Esempio: Impedisci a WordPress di comprimere e distorcere le tue immagini

La compressione dell'immagine in PHP produce distorsioni sottili che possono essere viste solo dagli occhi acuti per i dettagli. Se il tuo sito web ha un pubblico affilato (designer, forse?) E non vuoi che WordPress usi questo algoritmo di compressione, puoi usare il codice qui sotto per disabilitare la compressione ed evitare la distorsione:

Filtro del widget di testo

I widget predefiniti in WordPress hanno i loro filtri. Il widget_text filtro è il filtro di, hai indovinato, il widget Testo.

Esempio: abilitare Shortcode per il widget di testo

È piuttosto fastidioso che WordPress non ci permetta di utilizzare gli shortcode nel widget di testo per impostazione predefinita. Grazie per il suo filtro, però, possiamo abilitare gli shortcode all'interno del widget:

... aspetta, nessuna funzione da agganciare? In realtà, c'è: è una funzione di base chiamata do_shortcode () di cui potresti aver sentito parlare. Dato che c'è già una funzione da agganciare al filtro, non è necessario scriverne un altro.

Filtro del contenuto del feed

Come puoi filtrare il contenuto del post con il contenuto, puoi anche manomettere gli elementi del feed con the_content_feed filtro.

Esempio: inserimento delle miniature dei post per alimentare gli articoli

Questo esempio è uno dei miei preferiti tra tutti gli esempi di questa serie: Aggiunta della tanto necessaria miniatura del post agli elementi del feed!

 'Float: left; margin-right: .75em;' )); $ content = get_the_excerpt (). ''. __( 'Leggi di più' ) . ''; if ("! = $ featured_image) $ content = '
'. $ featured_image. $ contenuto. '
'; restituire $ content; ?>

Se vuoi che le miniature siano visualizzate a destra dell'estratto, cambia semplicemente 'Float: left; margin-right: .75em;' con 'Float: right; margin-left: .75em;'.

Modifica dei pulsanti dall'editor visivo

WordPress viene fornito con TinyMCE, un editor avanzato WYSIWYG che usiamo mentre scriviamo i nostri post. Con il mce_buttons filtro, possiamo cambiare la prima riga di pulsanti in quell'editor.

Esempio: rimuovere i pulsanti indesiderati dall'editor visuale

Se si esegue un blog con più autori e non si desidera che gli autori utilizzino pulsanti specifici nell'editor visivo, è possibile rimuovere alcuni dei pulsanti (o tutti) con il seguente codice:

Nota che non disabilita l'uso delle cose che rimuovi, ma rimuove solo i pulsanti.

Come ho detto, questo filtro si occupa del prima linea dei pulsanti nell'editor visivo. Per la seconda riga (i "pulsanti avanzati"), c'è un altro filtro chiamato mce_buttons_2 e ci sono due filtri aggiuntivi per due linee emtpy: mce_buttons_3 e mce_buttons_4.

Esclusi i termini dalle liste

Potrebbero esserci momenti in cui è necessario "escludere" un termine da ogni singola lista di termini nel tuo sito web. Questo piccolo filtro ci consente di fare esattamente quello che suggerisce il nome.

Esempio: Escludendo le categorie create dal tuo plugin

Immagina di aver creato un plug-in che deve creare due categorie denominate "Preferiti-MyPlugin" e "Hated-MyPlugin". Sembrerebbe brutto se i tag fossero elencati negli elenchi delle categorie, quindi è necessario nascondere li dalle liste. Ecco come lo fai:

 '. intval ($ exterm). "; else $ exclusions. = 'AND t.term_id <>'. intval ($ exterm).";  if (! empty ($ exclusions)) $ exclusions. = ')'; restituire $ esclusioni;  // Esempio di fonte: http://shailan.com/2598/how-to-exclude-categories-and-tags-from-your-widgets/?>

Ecco una caratteristica interessante: questo filtro nasconde anche i termini dagli elenchi di back-end. Freddo… e raccapricciante.

Modifica del dropdown delle dimensioni dell'immagine

Se scegli un'immagine da utilizzare nei tuoi post, devi scegliere una dimensione prima di aggiungerla al contenuto del post. Questo comodo filtro ci consente di aggiungere dimensioni di immagine personalizzate (create con il add_image_size () funzione in anticipo) al menu a tendina in cui selezioniamo le taglie.

Esempio: lasciare i writer scegliere dimensioni immagine personalizzate

Supponiamo che tu abbia già creato un'immagine personalizzata con il nome "golden-ratio-thumb" e che tu abbia bisogno dei tuoi autori per aggiungere immagini con quella dimensione nei loro post quando necessario. Ecco come si aggiunge la dimensione dell'immagine personalizzata al