Come posso ottenere get_sidebar in una variabile?

14 lug 2011, 16:10:23
Visualizzazioni: 14.1K
Voti: 6

Voglio ottenere una sidebar e salvarla in una variabile,
Questo è impossibile con la funzione get_sidebar poiché stampa semplicemente
la sidebar, esiste un'altra funzione che posso usare?

2
Commenti

Cosa vuoi fare con questa variabile?

Chip Bennett Chip Bennett
14 lug 2011 16:12:19

Voglio aggiungere widget da un contenuto di "pagina", quindi sto cercando di sostituire tag come %SIDEBAR_3% con la sidebar effettiva, quindi sto usando str_replace ma ho bisogno di una funzione che restituisca qualcosa

Asaf Asaf
14 lug 2011 16:18:41
Tutte le risposte alla domanda 2
1
18

Probabilmente devi utilizzare il buffer di output, se ho capito correttamente la tua domanda.

Prova qualcosa del genere:

ob_start();
dynamic_sidebar('sidebar-id');
$sidebar = ob_get_contents();
ob_end_clean();

Questo inserirà l'output della sidebar nella variabile $sidebar, che potrai poi elaborare e restituire dal tuo filtro sul contenuto della pagina.

14 lug 2011 19:34:18
Commenti

ha funzionato per me! grazie! ho dovuto salvare l'intero output html del footer in un transient. grazie!

Amit Amit
1 set 2011 00:14:21
0

La funzione get_sidebar() è una funzione di inclusione, utilizzata per includere il file sidebar.php.

La funzione che credo tu stia cercando è dynamic_sidebar() (Riferimento Codex), assumendo che tu conosca l'ID della sidebar dinamica che vuoi utilizzare.

14 lug 2011 16:26:54