Singpolyma

Archive of "Blogger"

Archive for the "Blogger" Category

Comment Forms and Blogger BETA

Posted on

Blogger now has an inline comment form that is native: http://buzz.blogger.com/2008/10/commenting-made-easier.html

Update 2007-02-08 : Contrary to a bit of a misunderstanding this hack DOES work with the new Blogger out of beta. If you can’t find the code try checking the ‘Expand Widget Templates’ checkbox. I have added a bugfix for the redirection bug some were experiencing.

The old inline comment form is dead to Blogger BETA (or, should I say, the new Blogger). Deader than ever, the form now does absolutely nothing.

Have no fear — there is good news!

Since we must use Blogger’s ugly comment page in some form (because of their new security token system), I wanted to include this in our pages somehow. I thought of making it inline, but discarded this idea because it would look rather dumb (since we can’t style that page) and would be displaying comments twice on the page, etc.

Enter lightbox. The following hack gives you a nice, integrated comment form that still appears somewhat separated (so visitors know you didn’t create that ugliness!). Visitors can close the ‘popup’ without commenting, but if they comment it will close and reload the page automatically. (See a demo on my test blog, but I can’t guarantee it will be there forever. My test blog is for testing and is therefore unpredictable.)

To install the hack, follow these steps:

  1. Go to the ‘Template’ tab and select ‘Edit HTML’.
  2. Check the ‘Expand Widget Templates’ box.
  3. Add this code right before your </head> tag (if you have my calendar hack, or any other Lightbox Gone Wild for Blogger hack, installed, this step in unnecessary):

    <script src='http://jscripts.ning.com/get.php?xn_auth=no&id=1093361' type='text/javascript'/>
    <script src='http://jscripts.ning.com/get.php?xn_auth=no&id=2655847' type='text/javascript'/>
    <link href='http://singpolyma.googlepages.com/lightbox.css' rel='stylesheet' type='text/css'/>
  4. Find this code:

    <a expr:href='data:post.addCommentUrl' expr:onclick='data:post.addCommentOnclick'><data:postCommentMsg/></a>

    and replace it with this:

    <a class='lbOn' expr:href='"#comment-form-" + data:post.id'><data:postCommentMsg/></a>
  5. If you do not use peek-a-boo comments or have a footer link pointing to the inline comments section (if you don’t know, you don’t) then find this code:

    <b:if cond='data:post.allowComments'>
    <a class='comment-link' expr:href='data:post.addCommentUrl' expr:onclick='data:post.addCommentOnclick'><b:if cond='data:post.numComments == 1'>1 <data:top.commentLabel/><b:else/><data:post.numComments/> <data:top.commentLabelPlural/></b:if></a>
    </b:if>

    and replace it with this:

    <b:if cond='data:post.allowComments'>
    <a class='comment-link lbOn' expr:href='"#comment-form-" + data:post.id'><b:if cond='data:post.numComments == 1'>1 <data:top.commentLabel/><b:else/><data:post.numComments/> <data:top.commentLabelPlural/></b:if></a>
    </b:if>
  6. Find this code:

    <b:loop values='data:posts' var='post'>
    <b:if cond='data:post.dateHeader'>
    <h2 class='date-header'><data:post.dateHeader/></h2>
    </b:if>

    And directly after it put this code:

    <script type='text/javascript'>
    var isLoad<data:post.id = 0;
    function checkDeactivate<data:post.id {
    if(isLoad<data:post.id > 1) {
    //<![CDATA[
    document.getElementById('lbContent').innerHTML = '<div style="text-align:center;width:100%;font-size:16pt;font-family:sans-serif;"><br /><br /><br />Reloading...</div>';
    //]]>
    window.location.reload();
    }//end if isLoad
    isLoad<data:post.id;++;
    }//end function checkDeactivate
    </script>
    <div expr:id='"comment-form-" + data:post.id' style='display:none;'>
    &amp;lt;iframe onload=&quot;checkDeactivate<data:post.id src=&quot;<data:post.addCommentUrl/>&amp;amp;isPopup=true#commentForm&quot; frameborder=&quot;0&quot; style=&quot;border-width:0px;width:100%;height:380px;&quot;&amp;gt;&amp;lt;/iframe&amp;gt;
    <div style='text-align: right;'><a class='lbAction' href='#' rel='deactivate'><img alt='' src='http://www.ning.com/xnstatic/icn/cross.gif' style='display: inline; width: 10px; height: 10px;'/> Close</a></div></div>
  7. Save your template

Blogger Calendar

Posted on

If you don’t use del.icio.us and want more posts showing up in your calendar try appending ?max-results=999 to your feed URL. So it will look like:
http://yourblog.blogspot.com/feeds/posts/full?max-results=999

So you’re not satisfied with just an archive list? You’ve perhaps switched to BETA and even the hierarchal menu just isn’t cool enough? Well, you’ve come to the right place.

This hack allows you to generate a calendar of your posts for people to browse inline in your blog! This hack works with either Blogger Classic or Blogger BETA and, best of all, is one of my easiest hacks to install yet!

Just go to the setup page. Enter your feed URL (do NOT use a FeedBurner feed, it tends to mess things up) and your blog title. Click generate. Follow the instructions.

Now, if you use mine (click the calendar next to the archives box in my sidebar) you’ll note that I have posts in the calendar going all the way back to forever it seems. Your probably only has this month’s. Well, that is just one extra hack, but there’s a catch — you have to be one of those who posts all blog entries to del.icio.us (I know, the BETA people no longer have a GM for that, I’m working on it.)

Go to the full del.icio.us feed setup page (I won’t steal your password!), enter your del.icio.us username and password in the upper form. Click Go. Go back to the setup page. Enter your username (and optional anchor tag) in the lower form. Click Go. Use the contents of your address bar as your feed URL for the calendar instead of your normal feed.

A translation of this page exists. Not sure on the language of that page, but thought I’d give them a link.

BloggerBubble

Posted on

Andrés Santos wrote a nice hack for Blogger that used Websnapr to display pop-up thumbnails of links in your blog posts. Just install one line of code and you’re good to go.

Problem : It didn’t work with my Blogger template.

And so I did what I often do — hacked his hack! If his code won’t work for you, insert this code just before the </head> tag in your template instead:

<script src="http://jscripts.ning.com/get.php?xn_auth=no&id=2654582" type="text/javascript"></script>

This should work with most Blogger templates (write me if it won’t with yours and I’ll update it). Also, it will work with any hAtom-based template.

JScripts Entry

Tags:

Peek-a-boo Update

Posted on

My peek-a-boo comments for BETA hack has been updated to use the new native JSONP. It should run faster now and the IE bug some were reporting should be gone.

JSON from Google

Posted on

JSON (and particularly JSONP) is one of the most useful data formats for hackers. For quite some time we have had to do all sorts of hackish things to transform the data available from Google services to JSON(P). No longer.

Blogger, Google Calendar, and Google Base now all support JSONP. This was announced on Blogger Buzz and is perhaps one of the greatest advances in hackability in (at least recent) Google history.

On top of this, SearchMash (a Google susiduary) now offers JSON feeds of Google’s Web, Images, Blog, and Video searches. For JSONP a proxy service is required, but this still allows for getting Google’s data out where we can hack with it.

One thing that this will mean very soon is an upgrade to peek-a-boo for BETA that makes use of this and will definately be faster.