You could make your own leaderboard - store the scores in your database, calculate rank, etc and use standard open graph actions to publish to users walls.
Alternatively, you can use Facebooks scores API which handles a lot of this for you, however it does have its limitations. You can also use the Achievements API which allows you to post stream stories to the users timeline like 'Joe just unlocked the Star Badge'.
Finally, you could use a third party tool such as Leaderboarded, although I'm not sure how relevant this is to your game.
As for useful guide - I've found it better/more relevant to provide friend leaderboards rather than global leaderboards, as these are often more interesting to the user.