Wordpress-tips v.15

Det var ett tag sedan nu, men när jag byggde en sida så råkade jag göra en sökning på en tom sträng. Då hamnade jag på startsidan, istället för söksidan. Konstigt tyckte jag, så jag letade efter en lösning.

Som tur var så var det fler än jag som hade samma problem. I Wordpress-forumet fanns tråden Blank search sends you to the homepage. Där fanns denna lösning:

add_filter( 'request', 'my_request_filter' );
function my_request_filter( $query_vars ) {
    if( isset( $_GET['s'] ) && empty( $_GET['s'] ) ) {
        $query_vars['s'] = " ";
    }
    return $query_vars;
}

Denna kod gör om en tom sökning till en sökning på ett blanksteg. Då visas sidan med sökresultatet, som inte fått någon träff, men ändå visas rätt sida. Detta är helt klart något som jag använt flitigt sedan dess!

Wordpress-tips v.14

Wordpress har tre standardstorlekar på uppladdade bilder. Det här är ett sätt att lägga till egna bildstorlekar och skala om redan uppladdade bilder.

Först ska de nya storlekarna specificeras med add_image_size(). Det görs i functions.php:

if ( function_exists( 'add_image_size' ) ) {
    add_image_size( 'width-180', 180, 9999); //unlimited height
    add_image_size( 'height-300', 9999, 300 ); //unlimited height
    add_image_size( 'my-thumb', 90, 90 ); //unlimited height
    add_image_size( $name, $width, $height, $crop );
}

Efter detta är gjort så är det dags att ändra storleken på de bilder som redan laddats upp. Detta görs väldigt bekvämt med pluginet AJAX Thumbnail Rebuild. Där kan du välja själv vilken eller vilka storlekar som ska rebuildas.

(PS. Glad påsk!)

Testanvändare på Facebook

Just nu jobbar jag med en Facebook-kampanj, som snart släpps. Under produktionen så testas Facebook-appen till denna kampanj och till det har jag skapat ett par testanvändare. Facebook har nämligen ett helt api för testanvändare till applikationer.

Till varje app går det att skapa 500 testanvändare. Från början är användaren kopplad endast till en applikation, men det går att koppla på andra applikationer också. En riktig användare kan inte bli vän med en testanvändare, men en testanvändare kan bli vän och interagera med andra testanvändare. De kan inte gilla sidor eller publicera publikt innehåll på Facebook. En testanvändare kan inte bli en riktig användare, hur mycket testanvändaren än vill.

Hur går det till?

Jo, börja med att puttar in denna url i webbläsaren:

https://graph.facebook.com/APP_ID/accounts/test-users?
    installed=true
    &name=FULL_NAME
    &locale=en_US
    &permissions=read_stream
    &method=post
    &access_token=APP_ACCESS_TOKEN

så får du ut något liknande detta som svar:

{
    "id": "1234...",
    "access_token":"1234567..." ,
    "login_url":"https://www.facebook.com/platform/test_account..."
    "email": "example...@tfbnw.net",
    "password": "1234..."
}

och sen är det bara att sätta igång testningen.
Koden är hämtad från Facebooks egna dokumentation: http://developers.facebook.com/docs/test_users/

Adminpanel för testanvändarna

Beroende på hur många testanvändare som används så kan mängden säkert göra det krångligt att hålla reda på. För det så har någon kodat ihop en administrationspanel för dessa testare. På sidan masteringapi.com finns Introduction To Facebook Test Users Accounts With PHP-SDK som går igenom steg för steg.

Wordpress-tips v.13

Puffar. Det lilla innehållet som leder till det stora. Länge skapade jag mina egna sorters puffar i Wordpress, tills jag hittade någon som gjort ett plugin för just detta ändamål.

Hur det funkar

Pluginet var till en början förvirrande när jag försökte förstå uppbyggnaden. Först ska en puff area skapas. Sedan ska widgets läggas till i rätt widget area och varje widget måste ha en puff area vald. Efter detta skapas puffarna. För varje puff måste man välja vilka sidor puffen ska vara synlig på och i vilken puff area den ska visas. Då gäller det att just den puff arean är vald till en widget som är placerad på just den sidan.

Även fast det känns lite krångligt att jobba med pluginet, så fyller det ändå en funktion. Vissa saker tycker jag själv kan förbättras, men det är ett bra plugin.

Ett tillägg

Varje puff kan länkas till en custom url. Dock är detta fält bara ett textfält. Jag ville gärna kunna välja bland de sidor jag skapat, så jag tweakade litegrann. I filen inc/puff-meta-boxes.php och funktionen spathon_puff_attributes_func lade jag till post metan _puff_link_id.

$puff_link_id = get_post_meta($post->ID, '_puff_link_id', true);

 /**
  *
  * Puff link id
  *
  */
 ?>
 <p>
     <label for="ps_puff_link_id"><strong><?php _e('Link', 'ps_puffar_lang'); ?></strong></label>
     <?php wp_dropdown_pages(array('name' => 'ps_puff_link_id', 'selected' => $puff_link_id, 'show_option_none' => '- ingen -')); ?>
    </p>

Och i functionen spathon_save_puff_meta lade jag till

 /**
  * Save the puff link id
  *
  * Delete the meta if empty else save the link id
  */
 $puff_link = $_POST['ps_puff_link_id'];
 if (empty($puff_link)) delete_post_meta($puff_id,'_puff_link_id');
 else update_post_meta($puff_id,'_puff_link_id',$puff_link);

Efter detta så är det bara att hämta ut länken med

$puff_link_id = get_post_meta($post->ID, '_puff_link_id', true);
get_permalink($puff_link_id);

Läs mer:

Wordpress-tips v.12

Wordpress har ju hängt med ett bra tag nu och för dem som har bloggat med det länge har arkivet blivit längre och längre.

För ett mer användarvänligt bloggarkiv så finns Flexo Archives. Deras egen förklaring räcker:

Displays your archives as a compact list of years that expands when clicked.

 

Dragsters Flexo Archives med 2012 expanderat

Flexo Archives i Wordpress widgets admin