Jun 042009

Currently I haven’t found a good plugin to insert Google Adsense code into the bbPress forum (for the plugin adsense-for-bbpress, I don’t like the idea of posting Adsense code as if it were a post), so I opened the template file post.php and manually inserted the code as:

<div class="threadpost">
	<div class="post">
	<?php
	if ($bb_alt['post'] == '0' || (is_int($bb_alt['post']/2)) && rand(0, 20) == 10) {
	?>
		<span style="float:right;padding-left:1em;">
		<script type="text/javascript"><!--
		google_ad_client = "pub-2679974521646557";
		/* 200x200 @ EN */
		google_ad_slot = "0041982581";
		google_ad_width = 200;
		google_ad_height = 200;
		//-->
		</script>
		<script type="text/javascript"
		src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
		</script></span>
	<?php } ?>
	<?php post_text(); ?>
	</div>
	<div class="poststuff"><?php printf( __('Posted %s ago'), bb_get_post_time() ); ?>
	<a href="<?php post_anchor_link(); ?>">#</a> <?php post_ip_link(); ?>
	<?php post_edit_link(); ?> <?php post_delete_link(); ?></div>
</div>

The variable $bb_alt['post'] has recorded the order of a post as 1, 2, …, n. My code above makes sure that the adsense code will appear

  1. in the top post with probability 100%; (guaranteed by $bb_alt['post'] == '0')
  2. randomly in those posts of even-order (is_int($bb_alt['post']/2)) with probability 1/21≈5% (rand(0, 20) == 10), but this probability depends on the RNG in PHP;

To a statistician, the only thing that is not random is “everything is random”. :grin:

Jun 042008

I have spent three days on these two plugins. The first one “animation” is written by myself after a quick view of the instructions on writing plugins for Dokuwiki, as there is no such kind of plugins so far. What I want to say is “Regular expression is really a devil”! It has almost taken me a whole day to understand how to use a correct pattern to match the parameters in the tags…

Then I modified the “math” plugin so that it is much easier and more familiar for us to type LaTeX formulae in the wiki pages: just use $...$ or $$...$$. People who are familiar with LaTeX surely know what they mean.

By the way, Philippe Grosjean has kindly provided me the necessary files for highlighting R code in the Dokuwiki system. That’s really fantastic! See this page for some examples.

So the main infrastructure has been built till now; the next step is to modify my animation package and include more functions which have been in my mind for a long time. Then I will begin to migrate the old web pages in http://R.yihui.name to AniWiki.

WWW.YIHUI.NAME XIE@YIHUI.NAME © 2007 - 2010 by Yihui Xie