
Som WordPress-utvecklare använder jag väldigt ofta samma utdrag för att undvika att slösa tid på att skapa ett nytt plugin. Och idag är en fantastisk dag bara för att jag ska dela några av dem med er. Följande utdrag är inte relaterade och du kan använda dem i dina egna anpassade plugins och teman.
Kryptera e-postmeddelanden och undvik skräppost
Till att börja med skulle jag vilja presentera dig för ett enkelt och utmärkt utdrag som använder en inbyggd WordPress-funktion som heter: antispambot(). Det är väldigt lätt att använda men väldigt användbart. Målet är att kryptera e-postmeddelanden som visas i gränssnittet för att förhindra att spambots fångar dem och spammar dig eller turnéklienter. Sätt helt enkelt e-postmeddelandet som en funktionsparameter så kommer WordPress att göra jobbet:
echo antispambot("johndoe@mysite.com");
Ändra platshållaren “Ange titel här”.
Därefter, när du lägger till ett nytt inlägg, ny sida eller ny anpassad inläggstyp, har titelfältet en platshållare som säger “Ange titel här.” Jag gillar verkligen när platshållartexten tar hänsyn till typen av inlägg du lägger till. Om det till exempel är en bok ska platshållaren visa “Ange boktitel här.” För att göra det, använd denna kod:
function change_default_title( $title ){
$screen = get_current_screen();
if ( '_your_custom_post_type_' == $screen->post_type ) {
$title="The new title";
}
return $title;
}
add_filter( 'enter_title_here', 'change_default_title' );
Definiera helt enkelt inläggstypen.
Kontrollera om en plugin är aktiv
Jag skapade några BBpress-beroende plugins. Eftersom jag inte ville att mina plugins skulle laddas om BBpress saknades, använder jag den här koden. Så enkelt, men så användbart!
// Include if use on the frontend, not needed in the admin
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
if (is_plugin_active('plugin-directory/plugin-file.php')) {
//plugin is activated
}
Visar datumet med standardformatet i WordPress
I nästan alla plugins eller teman görs detta inte korrekt. Ja, jag syftar på hur datumen visas. Eftersom många utvecklare gör teman eller plugins på engelska använder de USA:s datumformat, när européer använder dessa element är datumet inte korrekt formaterat. Därför är ett enkelt sätt att visa alla datum i samma format att använda formatbutiken i dina egna WordPress-installationsalternativ med hjälp av utdraget nedan. Vad betyder det:
date( get_option('date_format'), strtotime( $date ) )
Skaffa ett användar-ID för din inloggning
Häromdagen blev jag ombedd att skapa ett referensplugin för WordPress. Min klient ville att webbadresserna skulle vara grovt formaterade så här: http://mysite.com/referrer/remi (där, uppenbarligen, “remi” är referensen). För att göra det använde jag omskrivningsreglerna (se mitt tidigare inlägg), och även en liten funktion för att hämta användar-ID från din inloggning:
$my_user=""; // can be $_GET['user'] or query_vars
$user = get_user_by('login', $my_user );
$user_id = $user->ID;
Skaffa en media-URL (genom dess ID)
Enkelt men trevligt, här är ett enkelt sätt att få URL:en till en bilaga:
wp_get_attachment_url( $id );
Lägg automatiskt till innehåll till varje inlägg
Det här är ett exempel på hur du lägger till vilken typ av innehåll som helst i varje inlägg i din WordPress-installation. Du kan till exempel använda den här metoden för att bara lägga till innehåll i flödet, på inlägg som matchar vissa kriterier osv.
function add_post_content($content) {
if(!is_feed() && !is_home()) {
$content .= 'copyright '.date('Y').'
';
}
return $content;
}
add_filter('the_content', 'add_post_content');
Eka en kortkod utanför loopen
Det här är ett av de bästa utdragen, men eftersom jag får frågan hur man gör det nästan varje dag, så här visar du innehållet i en kortkod utanför loopen:
echo do_shortcode('[shortcode option1="value1" option2="value2"]');
Visa “mänsklig tid”
Och för att avsluta listan med utdrag, en snabbfunktion som låter dig visa tiden som Facebooks Twitter gör: “11 minuter sedan”, “1 timme sedan”, “igår” osv.
echo human_time_diff(get_the_time('U'), current_time('timestamp')).' ago';
