Ciao a tutti,
ho appena iniziato a "lavorare seriamente" con wordpress e mi sono subito scontrata con l'uso degli hook.
La mia esigenza è quella di inserire un campo select per uno specifico page_template.
In particolare se il template della pagina è "Categoria Prodotto" allora mostro il campo meta con la select della categoria.
Questo è il codice realizzato sin ora:
codice:
<?php
add_action('load-post.php', 'select_categoria_setup');
add_action('load-post-new.php', 'select_categoria_setup');
function select_categoria_setup() {
add_action('add_meta_boxes', 'select_categoria');
}
function select_categoria() {
if(get_post_meta( get_the_ID(), '_wp_page_template', TRUE ) == 'categoria.php'){
add_meta_box(
'id_categoria', // Unique ID
'Title Hook', // Title
'select_categoria_data', // Callback function
'page', // Admin page (or post type)
'side', // Context
'default' // Priority
);
}
}
function select_categoria_data() {
/*OUTPUT DELLA SELECT*/
}
?>
1° PROBLEMA - NUOVA PAGINA: anche dopo aver selezionato il template "Categoria Prodotto" il meta box non viene visualizzato finché non si salva/pubblica la pagina.
Devo inserire una add_action particolare?
2° PROBLEMA - JQUERY: volendo risolvere il problema sopra con jQuery inserendo un bind sulla selezione del template che mostra il meta box (inizialmente nascosto), come faccio ad aggiungere lato wp-admin un mio file js? (idem anche per un eventuale css)
3° PROBLEMA - REQUIRED: Come faccio ad impostare tale meta box come un campo obbligatorio nel caso in cui il template sia "Categoria Prodotto"? C'è una qualche impostazione particolare o devo risolvere mediante jQuery?
I dubbi in realtà sono molti altri ... per ora mi fermo qui!
Grazie a chiunque abbia voglia di darmi una mano a capirci qualcosa in più