Ian schreef:
> On 22 Oct 2008 at 6:34, Ron Piggott wrote:
> 
>> I am tweaking a blog application I have programmed.  I am trying to
>> display a Google ad half through the blog entry, at the first available
>> <br />.
>>
>> The code I use so far is:
>>
>> $half_way = strlen( nl2br(stripslashes($entry))) /2 ;
>> $ad_position = strpos  ( nl2br(stripslashes($entry))  , "<br />" ,
>> $half_way );
>> echo substr( nl2br(stripslashes($entry)) , 0, $ad_position);
>>
>> Is there a way to modify my strpos syntax to check and see if the
>> nearest <br /> is before the half way mark?  
>>
>> What is tending to happen is the ad is being placed 5/7ths of the way
>> through the blog entry because of the length of the paragraph the half
>> way character falls in.  Visually it doesn't look balanced.  I would
>> prefer the ad display 4/7th of the way through the blog entry in those
>> situations.
>>
>> Thanks for helping me.
> 
> Hi,
> 
> Disclaimer: Without seeing the actual blog entry this is all guess work!
> 
> Your code above seems to find the half way point in the raw text.  This is 
> all very well if 
> you do not have paragraphs or other formatting code that can move text around 
> once 
> displayed.
> 
> To overcome this you will have to try and detect the number of paragraphs (or 
> formatting 
> code) before the half way point and after it and try and move the Google Ad 
> entry to 
> accommodate this.
> 
> This will involve trial and error to determine an algorithm that best matches 
> your blog 
> entries.
> 
> Or you could go down the easy route and add some sort of marker (database 
> entry or a 
> tag of some sort) to each blog which indicates were the Google ads should go.

yeah, hack the WYSWYG editor to add an extra button that inserts a marker (e.g. 
specific
HTML comment) which you can replace ... WordPress has a tinyMCE hack that does 
something
like this although in that case it's used to insert markers that allow the 
content to
be split into multiple pages.

> Personally I prefer the later options as its probably easier ;)

personally I prefer the solution where there is no ad shown at all.

> Regards
> 
> Ian


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to