Extracting the location for a page with fewer conditionals
In advance sorry for the formatting but I code in C# so the it's probably slightly different than you're used to:

Using else if

Although this doesn't actually improve number of if statements, why are you using else if? If the previous if statement is satisfied you're returning a value anyway, so the code won't execute the next if statement anyway. This also renders your else keyword pointless too because of the same reasons

Combining conditionals

You are returning aPage.getSiteDetail() in two places, you can combine these if statements together:

if (aPage.getSiteDetail() != null &amp;&amp; 
    (aPage.getLocationDescription() == null || aPage.getLocationDescription().getLocationLevel() == null))
{
    return aPage.getSiteDetail();
}


After this there's no point in checking if aPage.getLocationDescription() == null || aPage.getLocationDescription().getLocationLevel() == null because if aPage.getLocationDescription() then aPage.getLocationDescription().getLocationLevel() has to be null:

Repeated method calls

You can really improve the readability of your code and minimise the number of external method calls your making by assigning the return value of your method calls to a variable:

string siteDetails = aPage.getSiteDetail();
// Here you need to replace var with whatever the return value of aPage.getLocationDescription() is
var locationDescription = aPage.getLocationDescription(); 
string locationLevel = locationDescription != null ? locationDescription.getLocationLevel() : null;


Pointless Conditionals

If aPage.getSiteDetail() != null || aPage.getLocationDescription() != null but none of the rest of your conditionals are satisfied you return "N/A" but you also do this if both are null anyway. So your first conditional is pointless, because you continuously evaluate those values later on making a final code looking something like this:

public String getLocationToString()
{
    string siteDetails = aPage.getSiteDetail();        
// Here you need to replace var with whatever the return value of aPage.getLocationDescription() is
    var locationDescription = aPage.getLocationDescription();
    string locationLevel = locationDescription != null ? locationDescription.getLocationLevel() : null;

    if (siteDetails != null))
    {
        if (locationDescription == null) 
        {
            return siteDetails;
        }
        if (locationLevel != null)
        { 
            return siteDetails.trim() + "-" + locationLevel;
        }
    }

    return "N/A";
}


Ternary Operators

I already used these when assigning a value to locationLevel but you could also do it for the following two if statements which means you'd only have one if in your whole function:

if (locationDescription == null) 
{
    return siteDetails;
}
if (locationLevel != null)
{ 
    return siteDetails.trim() + "-" + locationLevel;
}


Becomes:

return locationDescription == null ? siteDetails : siteDetails.trim() + "-" + location.level;


Could even become:

return siteDetails.trim() + (locationDescription == null ? "" : location.level);