Stampa l'intestazione del file modello del tema utilizzato da un post / pagina
add_action('wp_head', 'show_template');
function show_template() {
global $template;
print_r($template);
}
Riduci l'output DIV predefinito se il tuo tema utilizza post_class.
se il tuo tema utilizza qualcosa di simile
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
Puoi avere lunghi div pazzi nella tua fonte che potrebbero apparire così o anche più a lungo:
<div id="post-4" class="post-4 post type-post hentry category-uncategorized category-test category-test-1-billion category-test2 category-test3 category-testing">
Questo può davvero iniziare a ingombrare la tua fonte e sembrare piuttosto inutile nella maggior parte dei casi, andare 3-4 in profondità è abbastanza buono.
Per l'esempio principale possiamo suddividere l'output in questo modo:
// slice crazy long div outputs
function category_id_class($classes) {
global $post;
foreach((get_the_category($post->ID)) as $category)
$classes[] = $category->category_nicename;
return array_slice($classes, 0,5);
}
add_filter('post_class', 'category_id_class');
questo suddivide l'output per includere solo i primi 5 valori, quindi l'esempio sopra diventa:
<div id="post-4" class="post-4 post type-post hentry category-uncategorized">
Fai in modo che gli archivi delle categorie visualizzino tutti i post, indipendentemente dal tipo di post: ottimo per tipi di post personalizzati
function any_ptype_on_cat($request) {
if ( isset($request['category_name']) )
$request['post_type'] = 'any';
return $request;
}
add_filter('request', 'any_ptype_on_cat');
Rimuovi gli elementi di dashboard indesiderati
Questo è già stato pubblicato ma non aveva l'elenco completo degli articoli. Soprattutto quei fastidiosi "link in arrivo!"
add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');
function my_custom_dashboard_widgets() {
global $wp_meta_boxes;
//Right Now - Comments, Posts, Pages at a glance
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);
//Recent Comments
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);
//Incoming Links
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
//Plugins - Popular, New and Recently updated Wordpress Plugins
unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);
//Wordpress Development Blog Feed
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);
//Other Wordpress News Feed
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);
//Quick Press Form
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);
//Recent Drafts List
unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);
}
Rimuovere i salti di pagina "Ulteriori informazioni" **
invece torna all'inizio della pagina. Sai come quando fai clic su "leggi di più" salterà al punto della pagina che può essere fastidioso, questo lo fa semplicemente caricare la pagina normalmente, senza saltare!
function remove_more_jump_link($link) {
$offset = strpos($link, '#more-');
if ($offset) {
$end = strpos($link, '"',$offset);
}
if ($end) {
$link = substr_replace($link, '', $offset, $end-$offset);
}
return $link;
}
add_filter('the_content_more_link', 'remove_more_jump_link');
Limitare le voci di menu ADMIN in base al nome utente , sostituire il nome utente con un nome utente effettivo.
function remove_menus()
{
global $menu;
global $current_user;
get_currentuserinfo();
if($current_user->user_login == 'username')
{
$restricted = array(__('Posts'),
__('Media'),
__('Links'),
__('Pages'),
__('Comments'),
__('Appearance'),
__('Plugins'),
__('Users'),
__('Tools'),
__('Settings')
);
end ($menu);
while (prev($menu)){
$value = explode(' ',$menu[key($menu)][0]);
if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
}// end while
}// end if
}
add_action('admin_menu', 'remove_menus');
// in alternativa puoi usare if ($ current_user-> user_login! = 'admin') invece, probabilmente più utile
Dai uno stile alla nuvola di tag
//tag cloud custom
add_filter('widget_tag_cloud_args','style_tags');
function style_tags($args) {
$args = array(
'largest' => '10',
'smallest' => '10',
'format' => 'list',
);
return $args;
}
Riferimento completo delle opzioni qui (ce ne sono molte!) Http://codex.wordpress.org/Function_Reference/wp_tag_cloud
Modifica timer aggiornamento widget RSS predefinito
(il valore predefinito è 6 o 12 ore che dimentico (1800 = 30min).
add_filter( 'wp_feed_cache_transient_lifetime', create_function('$fixrss', 'return 1800;') );