WordPress child menu allways from top

<?php
/**
* Submenu
*/
if ($post->post_parent)    {
$ancestors=get_post_ancestors($post->ID);
$root=count($ancestors)-1;
$parent = $ancestors[$root];
} else {
$parent = $post->ID;
}
echo ”Parent: $parent”;
$children = wp_list_pages(‘title_li=&child_of=’.$parent.’&echo=0′);

if($children) { echo(‘<ul>’.$children.'</ul>’); }
?>

Annonser

Mac OS X MAMP, solr & PHP

Fix MAMP components

First you need to config your MAMP apache configuration correct, follow these steps:

  • Download MAMP components and configure
  • URL: http://www.mamp.info/en/downloads/index.html (i.e. MAMP_components_2.0.2.zip)
  • Unpack your MAMP_components_2.0.2.zip
  • Identify your php-5.x.x.tar.gz file (where 5.x.x is your version of PHP)
  • Create directory for your PHP sources: ”mkdir -vp /Applications/MAMP/bin/php/php5.X.X/include”
  • Unzip the tar file to you new folder
  • Rename your php-5.x.x directory to php (without the version numbering) e.g. mv /Applications/MAMP/bin/php/php5.2.17/include/php-5.?.?? /Applications/ MAMP/bin/php/php5.2.17/include/php
  • Configure PHP sources by running the following command in the terminal:cd /Applications/MAMP/bin/php/php5.?.??/include/php ./configure

(Source: http://stackoverflow.com/questions/10717752/having-problems-while-try-to-install-oauth-with-pecl-in-mamp-on-mac-os-lion)

Then you need to change you $PATH for PHP, use the terminal and type in:

vim ~/.profile

Add first to line: /Applications/MAMP/bin/php/php5.4.4/bin:

Ex of output should be.) export PATH=/Applications/MAMP/bin/php/php5.4.4/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

Save and exit (press ”esc” type in wq och press return).

Rest .profile by running this:

source ~/.profile

Make sure that if you type in ”which php” in the terminal, it should show you the path to you bin directory within MAMPs folderstruture

Install solr with brew

Now, use brew to install solr engine.

brew install pecl/solr

To test it, go to: /usr/local/Cellar/solr/4.3.1/libexec/example/

and run the following command in the terminal: java -jar start.jar

Install PECL and solr php extension

And last, install PECL and use PECL to install solr-php extension. Follow this guide: http://jason.pureconcepts.net/2012/10/install-pear-pecl-mac-os-x/

From guide (if deleted):

sudo php -d detect_unicode=0 go-pear.phar
  1. Type 1 and press return.
  2. Enter:
    /usr/local/pear
    
  3. Type 4 and press return.
  4. Enter:
    /usr/local/bin
    
  5. Press return

Cache is the shit!

Har i dagarna börjar experimentera med egna cache funktioner, tidigare har jag överlåtit all cache till andra insticksmoduler i koden så som Smarty och MySQL inbyggda SQL_CACHE men nu tänkte jag att det är dax att börja titta på om det finns mer att göra.

Endast efter ett par dagar så måste jag säga att cachening gör mer underverk än vad man tror, och j, jag är minst lika begeistrad som jag låter =)

Genom små metoder har jag lyckats banta ner stora laddningstider på olika siter från 3 – 4 sekunder till 0,5 sekunder. Detta kan låta som ett ilandsproblem för den icke insatta, men problemet med långa laddningstider blir rätt uppenbara så fort man surfar på en långsam sida.

Jag känner helt klart att detta kommer att bli en fortsatt vecka i cachenings tecken! Håll i hatten för nu trimmar vi webben!

ALTER TABLE, lägg till fält med SQL

För att lägga in ett nytt fält (kolumn) i en SQL databas så kör man följande fråga:


ALTER TABLE your_tabel ADD your_number_field1 INT(1) NOT NULL, ADD your_text_field2 VARCHAR(145) NULL;

I koden ovanför så lägger vi till två fält, första fältet är ett numeriskt fält som får innehålla en siffra ( INT(1) ) och andra ett textfält som får innehålla 145 tecken ( VARCHAR(145) ). Första fältet får ej vara tomt ( NOT NULL) medan textfältet får vara tomt (NULL).