{"id":15685712,"url":"https://github.com/leogopal/b2","last_synced_at":"2026-02-27T08:39:19.693Z","repository":{"id":68584166,"uuid":"45613401","full_name":"leogopal/b2","owner":"leogopal","description":"[b2/cafelog] Historical repository of b2/cafelog which was forked to WordPress","archived":false,"fork":false,"pushed_at":"2015-11-05T13:38:53.000Z","size":0,"stargazers_count":14,"open_issues_count":0,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-23T00:36:22.508Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://wordpress.org","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/leogopal.png","metadata":{"files":{"readme":"readme.html","changelog":"changes.txt","contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-11-05T13:38:10.000Z","updated_at":"2024-11-20T19:10:31.000Z","dependencies_parsed_at":"2023-02-21T18:00:48.079Z","dependency_job_id":null,"html_url":"https://github.com/leogopal/b2","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/leogopal/b2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leogopal%2Fb2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leogopal%2Fb2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leogopal%2Fb2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leogopal%2Fb2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/leogopal","download_url":"https://codeload.github.com/leogopal/b2/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/leogopal%2Fb2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29888217,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-27T08:34:21.514Z","status":"ssl_error","status_checked_at":"2026-02-27T08:32:38.035Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-03T17:29:23.262Z","updated_at":"2026-02-27T08:39:19.660Z","avatar_url":"https://github.com/leogopal.png","language":"PHP","funding_links":["https://www.paypal.com/cgi-bin/webscr","https://www.paypal.com/images/x-click-but04.gif"],"categories":[],"sub_categories":[],"readme":"\u003chtml\u003e\n\u003chead\u003e\n\u003ctitle\u003eb2 \u003e ReadMe\u003c/title\u003e\n\u003cmeta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"\u003e\n\u003cstyle\u003e\n\u003c!--\nbody,p,li { font-family: arial,helvetica,sans-serif; font-size:12px; margin-left: 15px; }\nblockquote { font-family: arial,helvetica,sans-serif; font-size:12px; }\nh1 { font-family: georgia,times new roman,serif; font-size: 18px; font-weight: lighter; color: #000066; }\n.params {\n\tborder-color: #cccccc;\n\tborder-width: 1px;\n\tborder-style: solid;\n\tpadding: 5px;\n\tmargin: 5px;\n\tmargin-left: 20px;\n\tmargin-right: 80px;\n\tfont-family: arial,helvetica,sans-serif; font-size:12px;\n}\nul,ol { margin: 0px; padding: 0px; padding-left: 20px; padding-top: 5px; padding-right: 5px; padding-bottom: 5px; }\n--\u003e\n\u003c/style\u003e\n\n\u003c/head\u003e\n\n\u003cbody bgcolor=\"#FFFFFF\" text=\"#000000\"\u003e\n\u003ctable width=\"600\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" align=\"center\"\u003e\n  \u003ctr\u003e\n\t\u003ctd\u003e \n      \u003cp align=\"center\"\u003e\u003cimg src=\"b2-img/b2minilogo.png\" width=\"50\" height=\"50\"\u003e\u003cbr /\u003e\n        \u003cfont size=\"2\" face=\"Georgia, Times New Roman, Times, serif\"\u003e0.6.2.1\u003cbr /\u003e\n        20030625\u003c/font\u003e\u003c/p\u003e\n\t\t\n\t  \u003cp align=\"center\"\u003eweblog / news publishing tool\u003c/p\u003e\n\n\t  \u003cp align=\"center\"\u003e\u003ca href=\"#requirements\"\u003erequirements\u003c/a\u003e - \u003ca href=\"#installation\"\u003einstallation\u003c/a\u003e \n        - \u003ca href=\"#templates\"\u003etemplate(s)\u003c/a\u003e - \u003ca href=\"#usage\"\u003equerystring \n        usage\u003c/a\u003e - \u003ca href=\"#xmlrpc\"\u003exmlrpc (Blogger API)\u003c/a\u003e - \u003ca href=\"#postviaemail\"\u003epost via email\u003c/a\u003e - \u003ca href=\"#notes\"\u003enotes\u003c/a\u003e\u003c/p\u003e\n\n\t  \u003ca name=\"requirements\"\u003e\u003c/a\u003e\u003ch1\u003erequirements:\u003c/h1\u003e\n\t  \u003cp\u003e\u003cstrong\u003ePHP4\u003c/strong\u003e (version 4.0.5 or higher)\u003cbr /\u003e\n        \u003cstrong\u003eMySQL\u003c/strong\u003e (version 3.23.23 or higher)\u003cbr /\u003e\n        Perl (optional - only for the spellchecker)\u003cbr /\u003e\n        ...and a link to \u003ca href=\"http://cafelog.com\" target=\"_blank\"\u003ehttp://cafelog.com\u003c/a\u003e \n        on your site.\u003cbr /\u003e\n        \u003cbr /\u003e\n        The link will help promoting b2, since this is its only mean of promotion.\u003cbr /\u003e\n\t\tIf you like b2, you can help me with a donation (even if it's only 2 or 3 dollars, every donation helps), or you can buy me stuff from my \u003ca href=\"http://www.amazon.com/exec/obidos/registry-address-select-done/1XKLC38KDUPXR/103-8901342-4908609\"\u003ewishlist\u003c/a\u003e :)\n\t\t\u003cform action=\"https://www.paypal.com/cgi-bin/webscr\" method=\"post\"\u003e\n\t\t  \u003cinput type=\"hidden\" name=\"cmd\" value=\"_xclick\" /\u003e\n\t\t  \u003cinput type=\"hidden\" name=\"business\" value=\"dieu@paradis.com\" /\u003e\n\t\t  \u003cinput type=\"image\" src=\"https://www.paypal.com/images/x-click-but04.gif\" border=\"0\" name=\"submit\" alt=\"If you like b2 a lot, you may help me with a donation :)\" title=\"If you like b2 a lot, you may help me with a donation :)\" /\u003e\n\t\t\u003c/form\u003e\u003c/p\u003e\n\n\t  \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\t  \u003ca name=\"installation\"\u003e\u003c/a\u003e\u003ch1\u003einstallation:\u003c/h1\u003e\n\t  \u003cp\u003eNew users:\u003c/p\u003e\n\t  \u003cblockquote\u003e\n\t  \n\t    \u003cstrong\u003e1.\u003c/strong\u003e Unzip the package in an empty directory.\u003cbr /\u003e\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e2.\u003c/strong\u003e Open b2config.php in a text editor, and modify the variables\n\t\tas explained in the comments. Comments are lines that start with # or /* or //\u003cbr /\u003e\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e3.\u003c/strong\u003e Upload everything. This release is designed to sit in your root folder, \n\t\tIE the folder where your b2-powered page will reside.\u003cbr /\u003e\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e4.\u003c/strong\u003e a. This isn't necessary but ensures your security: With your FTP \n\t\tprogram, do a CHMOD 644 on the file b2config.php, so no-one can overwrite \n\t\tit except you. If your server is on Windows NT, then set the file on \u0026quot;read-only\u0026quot; mode.\u003cbr /\u003e\n\n\t\t\u0026nbsp;\u0026nbsp;\u0026nbsp;b. if you want to use the spellchecker, do a CHMOD 755 on sproxy.pl\u003cbr /\u003e\u003cbr /\u003e\n\n        \u003cstrong\u003e5.\u003c/strong\u003e Launch b2install.php in your browser. This should setup the \n        MySQL database for your blog. If there is an error, double check your \n        b2config.php file, and try again. If it fails again, please go to the \n        support forums there: \u003ca href=\"http://tidakada.com/board\" target=\"_blank\"\u003ehttp://tidakada.com/board\u003c/a\u003e, \n        and make a post with all the information about the failure (error messages, \n        etc), and your setup (the PHP and MySQL versions on your server, and the \n        browser you were using).\u003cbr /\u003e\u003cbr /\u003e\n\n        \u003cstrong\u003e6.\u003c/strong\u003e Delete b2install.php - this is not necessary since \n        v0.5, because there's no \u0026quot;drop table\u0026quot; instructions in the install \n        script anymore, but it's better to delete it anyway (or rename it to a \n        random name in case you need it again in the future).\u003cbr /\u003e\u003cbr /\u003e\n\n        \u003cstrong\u003e7.\u003c/strong\u003e Go to b2login.php and log in with the login \u0026quot;admin\u0026quot; \n        and the pass \u0026quot;admin\u0026quot;. Then click on the menu 'My Profile',\n        and change the password. Note: \n        you need javascript enabled to launch the profile popup window.\u003cbr /\u003e\u003cbr /\u003e\n\n        \u003cstrong\u003e8.\u003c/strong\u003e Do this if you don't want to blog as \u0026quot;admin\u0026quot;: log \n        out, create an user account on b2register.php, then re-log in as \u0026quot;admin\u0026quot;, \n        and update the level of the new user to 5 or more, so that you have all \n        the admin rights. Logout, then log in as the new user.\u003cbr /\u003e\u003cbr /\u003e\n\n\t\tWhenever you want to post something, just open a browser and \n\t\tgo to b2login.php to log in and post.\u003cbr /\u003e\n\t\tYou can also use a bookmarklet and/or a sidebar (IE5+/NS6+) to post.\u003cbr /\u003e\n\t\tYou can also post through the Blogger API, \u003ca href=\"#xmlrpc\"\u003eclick here\u003c/a\u003e for more info.\u003cbr /\u003e\n\t\tYour site's blog is on b2.php (simple template) and index.php (CSS template), you \n\t\tcan rename this file to index.php or any other name you fancy (provided \n\t\tit bears the php extension or is interpreted as a php file by your server).\u003cbr /\u003e\n\t\tYou can also copy b2.php into a new file and modify that new file, it will work too ;)\u003cbr /\u003e\n\n\t  \u003c/blockquote\u003e\n\t  \u003cp\u003eUsers upgrading from v0.5.x to v0.6.1:\u003c/p\u003e\n      \u003cblockquote\u003e \u003cstrong\u003e1.\u003c/strong\u003e Unzip the package in an empty directory, to avoid \n        deleting your existing b2config.php file.\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e2.\u003c/strong\u003e Open the new b2config.php file and your existing b2config.php file. Modify the new b2config.php file in order to use your existing settings there, in addition to the new settings. (There are a lot of additionnal settings, so it's best to edit the new config file than adding on the exisitng one.)\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e3.\u003c/strong\u003e if you want to use the new spellchecker, do a CHMOD 755 on sproxy.pl\u003cbr /\u003e\u003cbr /\u003e\n\n        \u003cstrong\u003e4.\u003c/strong\u003e Edit \u003cu\u003eall\u003c/u\u003e your templates and update your template tags \n        to follow the changes to the template tags here, because there have been some \n        modifications, and it would cause some errors if you didn't edit the templates. \n        Tags noted with an orange asterisk \u003cb\u003e\u003cfont face=\"Courier New, Courier, mono\" color=\"#FF9900\"\u003e*\u003c/font\u003e\u003c/b\u003e \n        are tags that were added or modified in v0.6, these are those you got \n        to update in your templates.\u003cbr /\u003e\n\t\t\u003cstrong\u003e5.\u003c/strong\u003e Upload the new files, and you're done. :)\u003cbr /\u003e\u003c/blockquote\u003e\n\t  \u003cp\u003eUsers upgrading from v0.6preX to v0.6.1:\u003c/p\u003e\n      \u003cblockquote\u003e \u003cstrong\u003e1.\u003c/strong\u003e Unzip the package in an empty directory, to avoid \n        deleting your existing b2config.php file.\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e2.\u003c/strong\u003e Open the new b2config.php file and your existing b2config.php file. Modify the new b2config.php file in order to use your existing settings there, in addition to the new settings. (There are a lot of additionnal settings, so it's best to edit the new config file than adding on the existing one.)\u003cbr /\u003e\n\t\t\u003cstrong\u003e3.\u003c/strong\u003e Upload the new files, and you're done. :) (Generally, this means every file but your template file index.php/b2.php)\u003cbr /\u003e\n\t\t\u003cstrong\u003e4.\u003c/strong\u003e To add support of the new TrackBack and Pingback functionnalities, you may want to check the Template tags section for the appropriate new tags, and the default index.php to see how they are used :)\u003cbr /\u003e\n        \u003c/blockquote\u003e\n      \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\t  \u003ca name=\"templates\"\u003e\u003c/a\u003e\u003ch1\u003etemplate(s):\u003c/h1\u003e\n\t  \u003cp\u003eFirst notes:\u003c/p\u003e\n\t  \u003cblockquote\u003eEnclosed is an example of a template, in the file b2.php. You can rename \n\t\tthis file to \u0026quot;index.php\u0026quot;or something else (recent b2 versions have a default index.php, which is an elaborate CSS-based template).\u003cbr /\u003e\n\t\tYou can have any number of template files, since all they do is extract \n\t\tthe posts from the database.\u003cbr /\u003e\n\t\tPseudo-template for the comments is in b2comments.php. You needn't rename this \n\t\tfile, but you can edit it.\u003cbr /\u003e\n\t\tThe only thing to remember is that it's not actually a template, but a \n\t\tPHP file that you're manipulating. So when you see \u0026quot;don't delete \n\t\tthis line\u0026quot;, you know you mustn't, unless you want to have a broken \n\t\tpage.\u003cbr /\u003e\n\t\tRequired lines are: the first lines that call blog.header.php, the lines \n\t\twith the \u0026quot;while\u0026quot; statement, and the ones with just \u0026quot;}\u0026quot; \n\t\t(it ends the while loop).\u003cbr /\u003e\n        Between the \u0026quot;while\u0026quot; line and the \u0026quot;}\u0026quot;, is the template \n        for your posts.\u003cbr /\u003e\n        \u003cbr /\u003e\n      \u003c/blockquote\u003e\n\n\t\t\u003cp\u003eNotes about parameters:\u003c/p\u003e\n\t  \u003cblockquote\u003e\u003cstrong\u003e1.\u003c/strong\u003e Some template tags can accept optional parameters\n\t    between the\tparenthesis \u003cstrong\u003e()\u003c/strong\u003e.\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e2.\u003c/strong\u003e To add a parameter to a\n\t\ttag, enclose it between quotes and put it between the \u003cstrong\u003e()\u003c/strong\u003e.\u003cbr /\u003e\n\t\tExample: \u0026lt;?php my_tag(\"my parameter\"); ?\u003e\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e3.\u003c/strong\u003e You may have to put several parameters, for that you separate\n\t\tthem with commas.\u003cbr /\u003e\n\t\tExample: \u0026lt;?php my_tag(\"first param\",\"second param\"); ?\u003e\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e4.\u003c/strong\u003e The order of parameters is important. If a function accepts 2\n\t\tparameters and you only want to set the second one, you still have to provide the\n\t\tfirst one, and so on for any number of parameters.\u003cbr /\u003e\n\t\tExample: \u0026lt;?php my_tag(\"\",\"second param\"); ?\u003e\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e5.\u003c/strong\u003e Some template tags, like the_date(), display something only\n\t\tif in some conditions. They generally accept parameters to display something before\n\t\tand after them only when they display something.\u003cbr /\u003e\n\t\tExample: \u0026lt;?php the_title(\"\u0026lt;h1\u003e\",\"\u0026lt;/h1\u003e\"); ?\u003e would display \u0026lt;h1\u003etitle\n\t\tof the post\u0026lt;/h1\u003e only if the post has a title\u003cbr /\u003e\n\t\t\n\t\t\u003cbr /\u003e\u003c/blockquote\u003e\n\n\t\t\u003cp\u003eTemplate tags are these:\u003c/p\u003e\n\n\t  \u003cblockquote\u003e\n\t  \n\t    \u003cstrong\u003e\u0026lt;?php the_date() ?\u0026gt;\u003c/strong\u003e \u003cspan style=\"font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\t  the date of the post. example: 03.07.01 (default is dd.mm.yy).\u003cbr /\u003e\n\t\t  the date is displayed only on new days. for example if you got 10 posts \n\t\t  on the same day, the date for this day is displayed only once.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eformat string (default: \"d.m.y\")\u003c/li\u003e\n\t\t  \u003cli\u003estring to display before the date (default is blank)\u003c/li\u003e\n\t\t  \u003cli\u003estring to display after the date (default is blank)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php the_time() ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\t  the time of the post. example: 18:37:00 (default is hh:mm:ss)\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eformat string (default: \"H:i:s\")\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eNote:\u003c/strong\u003e you can change the way the date \u0026amp; time are displayed \n\t\tin the Options page.\u003cbr /\u003e\n        once you understand the format strings for the date \u0026amp; time (explained \n        in the Options page), you can change the display right on the template: \n        for example, \u003cstrong\u003ethe_date(\u003c/strong\u003e\u003cem\u003e\u0026quot;d.m.Y\u0026quot;\u003c/em\u003e\u003cstrong\u003e)\u003c/strong\u003e to have \n        dates like 25.12.2001, \u003cstrong\u003ethe_time(\u003c/strong\u003e\u003cem\u003e\u0026quot;B\u0026quot;\u003c/em\u003e\u003cstrong\u003e)\u003c/strong\u003e to \n        have Swatch Internet Time.\u003cbr /\u003e\n\t\tIf you change the display of the date on the template, changing it from the\n\t\toptions page won't have any effect.br /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eNote about the_date():\u003c/strong\u003e if you want all your posts to bear the date, \n\t\tyou'll have to use the_time() instead, with a date format string. for \n\t\texample, to have all your posts show like \u0026quot;25.12.2001 @ 8:04:50 AM\u0026quot; \n\t\tyou'll have the_time(\u0026quot;d.m.Y @ g:i:s A\u0026quot;). you can also repeat \n\t\tthis template tag 2 times with 2 different formats: the_time(\u0026quot;d.m.Y\u0026quot;) \n\t\tfor the date, and then later the_time(\u0026quot;g:i:s A\u0026quot;) for the time \n\t\tof the day.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php the_weekday() ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n        This displays the day of the week when the post was made. It works like \n        the_time(), in that it would appear at every post. Weekdays can be obtained \n        with a custom date format string in the_time() or the_date(), but for \n        non-english weekdays you have to edit b2config.php\u003cbr /\u003e\n\t\t\u003cstrong\u003eNote: this tag is OBSOLETE, the_time() and the_date() now use weekdays/months from b2config.php\u003c/strong\u003e\u003cbr /\u003e\n        \u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php the_weekday_date() ?\u0026gt;\u003c/strong\u003e \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n        Like the_weekday(), but works like the_date(), in that it would appear \n        only on new days.\u003cbr /\u003e\n\t\t\u003cstrong\u003eNote: this tag is OBSOLETE, the_time() and the_date() now use weekdays/months from b2config.php\u003c/strong\u003e\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003estring to display before the weekday_date (default is blank)\u003c/li\u003e\n\t\t  \u003cli\u003estring to display after the weekday_date (default is blank)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n        \u003cbr /\u003e\n\t\t  \u003cstrong\u003e\u0026lt;?php the_ID() ?\u0026gt;\u003cbr /\u003e\n\t\t  \u003c/strong\u003ethe ID (number) of the post.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\t\t  \u003cstrong\u003e\u0026lt;?php the_title() ?\u0026gt;\u003cbr /\u003e\n\t\t  \u003c/strong\u003eThe title of the post.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003estring to display before the title (default is blank)\u003c/li\u003e\n\t\t  \u003cli\u003estring to display after the title (default is blank)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php the_content() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n        \u003c/strong\u003eThe text of the post.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003etext to display for the link to the complete entry (default is \u003cem\u003e'(more...)'\u003c/em\u003e)\u003c/li\u003e\n\t\t  \u003cli\u003e0 or 1, whether you want to show the teaser message or not, when showing \n        the complete text (default is 1)\u003c/li\u003e\n\t\t  \u003cli\u003ea filename of another template, if you want the 'more' link to link \n        to a different template for the complete text of the extended entry (default \n        is the current template)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n        For example \u003cem\u003e\u0026lt;?php the_content(\u0026quot;read more\u0026quot;,\u0026quot;0\u0026quot;,\u0026quot;blah.php\u0026quot;) \n        ?\u0026gt;\u003c/em\u003e would display a link to \u003cem\u003eblah.php\u003c/em\u003e, with the link text \n        \u003cem\u003eread more\u003c/em\u003e, and won't display the teaser message.\u003cbr /\u003e\n        \u003cbr /\u003e\n        \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e \n        To enter an extended entry, just type \u003cem\u003e\u0026lt;!--more--\u0026gt;\u003c/em\u003e in your \n        entry. The part before that comment is the teaser, the part after it is \n        the extended entry. To force the extended entry not to show the teaser \n        message, type \u003cem\u003e\u0026lt;!--noteaser--\u0026gt;\u003c/em\u003e somewhere in your entry.\u003cbr /\u003e\n        \u003cbr /\u003e\n        \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e \n        To enter an entry with several pages, just type \u003cem\u003e\u0026lt;!--nextpage--\u0026gt;\u003c/em\u003e\n\t\tin your entry to start a new page.\u003cbr /\u003e\n        \u003cbr /\u003e\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php next_post() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n        \u003c/strong\u003eDisplays a link to the next post(s). (Generally you might want to use that\n\t\ttag only in single-post templates)\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eformat string for the link (default is \"%\", where % is replaced with the title\n\t\t  of the next post)\u003c/li\u003e\n\t\t  \u003cli\u003etext to display to announce the link (default is \"next post: \")\u003c/li\u003e\n\t\t  \u003cli\u003e\"yes\" or \"no\": display the title of the post, or no (default is \"yes\")\u003c/li\u003e\n\t\t  \u003cli\u003e\"yes\" or \"no\": display a link to the next post only if the next post is in\n\t\t  the same category (default is \"no\")\u003c/li\u003e\n\t\t  \u003cli\u003enumber: which next post ? if you make it '2', the 2nd next post is linked\n\t\t  instead of the 1st next one (default is \"1\", which means first next post)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php previous_post() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n        \u003c/strong\u003eDisplays a link to the previous post(s). (Generally you might want to use\n\t\tthat tag only in single-post templates)\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eformat string for the link (default is \"%\", where % is replaced with the title of the previous post)\u003c/li\u003e\n\t\t  \u003cli\u003etext to display to announce the link (default is \"previous post: \")\u003c/li\u003e\n\t\t  \u003cli\u003e\"yes\" or \"no\": display the title of the post, or no (default is \"yes\")\u003c/li\u003e\n\t\t  \u003cli\u003e\"yes\" or \"no\": display a link to the next post only if the previous post is in\n\t\t  the same category (default is \"no\")\u003c/li\u003e\n\t\t  \u003cli\u003enumber: which previous post ? if you make it '2', the 2nd previous post is\n\t\t  linked instead of the 1st previous post (default is \"1\", which means first previous post)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php next_posts() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\u003c/strong\u003eDisplay the URL portion of a link to the next set of posts. \u003cbr /\u003e\n\n\tGenerally you would use this in a template to navigate to the next \"set\" of posts \n\twhen the \"Show Options\" settings for the site is set to \"posts paged\".  The displayed \n\tstring can be used to construct a link.  When the site options are not set to 'posts paged\", \n\tthe next and previous functions will display nothing.\u003cbr /\u003e\n\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t  \u003cli\u003eMax page number to use. Default \"0\"; no limit\u003c/li\u003e\n\t  \u003c/ul\u003e\n\t  \u003c/div\u003e\n\t  \u003cbr /\u003e\u003cbr /\u003e\n\t\n\t\u003cstrong\u003e\u0026lt;?php next_posts_link() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\n\t\u003c/strong\u003e\n\tDisplays a full link to the next \"set\" of posts only if show options set to \"posts paged\"\n\tand only if there is another page or partial page of data.\u003cbr /\u003e\n\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t  \u003cli\u003eA user supplied string. Default \"Next Page \u0026gt;\u0026gt;\"\u003c/li\u003e\n\t  \u003c/ul\u003e\n\t  \u003c/div\u003e\n\t  \u003cbr /\u003e\u003cbr /\u003e\n\n\t  \n\t\u003cstrong\u003e\u0026lt;?php previous_posts() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\u003c/strong\u003eDisplays the URL portion of a link to the previous posts.\u003cbr /\u003e\n\tGenerally you would use this in a template to navigate to the previous \"set\" of posts \n\twhen the \"Show Options\" settings for the site is set to \"posts paged\".  \n\tThe displayed string can then be used to construct a link. When the site options are not set to 'posts paged\", \n\tthe next and previous functions will display nothing.\u003cbr /\u003e\n\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t  \u003cli\u003eNo parameters.\u003c/li\u003e\n\n\t  \u003c/ul\u003e\n\t  \u003c/div\u003e\n\t  \u003cbr /\u003e\u003cbr /\u003e\n\t\n\t\u003cstrong\u003e\u0026lt;?php previous_posts_link() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\u003c/strong\u003e\n\tDisplays a full link to the previous \"set\" of posts only if show options set to \"posts paged\" and if there is a previous set, otherwise nothing is displayed.\u003cbr /\u003e\n\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\n\t  \u003cli\u003eA user supplied string. Default \"\u0026lt;\u0026lt; Previous Page\"\u003c/li\u003e\n\t  \u003c/ul\u003e\n\t  \u003c/div\u003e\n\t  \u003cbr /\u003e\u003cbr /\u003e\n\t   \n \t\u003cstrong\u003e\u0026lt;?php posts_nav_link() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t \u003c/strong\u003eThe function displays a complete navigation set of links including a user definable \"separator\" with the ability to supply a the text string to be used for the \"previous\" and \"next\" links.\u003cbr /\u003e\n\t\tThe default result will produce the following string:\u003cbr /\u003e\n\t\t\u003cp align=\"center\"\u003e\u0026lt;\u0026lt; Previous Page :: Next Page \u0026gt;\u0026gt;\u003c/p\u003e\n\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\n\t  \u003cli\u003eA user supplied \"separator\" string. Default \" :: \"\u003c/li\u003e\n\t  \u003cli\u003eA user supplied \"previous\" string. Default \"\u0026lt;\u0026lt; Previous Page\"\u003c/li\u003e\n\t  \u003cli\u003eA user supplied \"next\" string. Default \"Next Page \u0026gt;\u0026gt;\"\u003c/li\u003e\n\t  \u003c/ul\u003e\n\t  \u003c/div\u003e\n\t  \u003cbr /\u003e\u003cbr /\u003e\n\t  \n\t  \u003cstrong\u003e\u0026lt;?php link_pages() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n        \u003c/strong\u003eDisplays links to the pages of the post if it's a multiple pages post.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003estring to display before the tag (default is \"\u0026lt;br /\u003e\", a newline)\u003c/li\u003e\n\t\t  \u003cli\u003estring to display after the tag (default is \"\u0026lt;br /\u003e\", a newline)\u003c/li\u003e\n\t\t  \u003cli\u003e\"next\" or \"number\": display links like \"next/previous page\" or links to each page with the number of the page \"1 2 3 4 etc\" (default is \"number\")\u003c/li\u003e\n\t\t  \u003cli\u003estring to display the \"next page\" link (default is \"next page\")\u003c/li\u003e\n\t\t  \u003cli\u003estring to display the \"previous page\" link (default is \"previous page\")\u003c/li\u003e\n\t\t  \u003cli\u003eformat string for the \"number of page\" link (default is \"%\", where % is replaced by the number of the page)\u003c/li\u003e\n\t\t  \u003cli\u003efile name, in case you want to load the posts with multiple pages in a different template (default is the current template)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\u003cbr /\u003e\n\n\t\t  \u003cstrong\u003e\u0026lt;?php the_author() ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\t  The author of the post.\u003cbr /\u003e\n        Depending on the user's profile settings, it can display whether their \n        nickname, login name, first name, last name, both first\u0026amp; last name, \n        or last \u0026amp; first name. look below for more author-related template \n        tags. \u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t  \u003cstrong\u003e\u0026lt;?php the_category() ?\u0026gt;\u003cbr /\u003e\n\t\t\u003c/strong\u003ethe name of the category the post belongs to. you can as an admin \n\t\tadd categories, and rename them if needed. default category is 'General', \n\t\tyou can rename it too.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t  \u003cstrong\u003e\u0026lt;?php the_category_ID() ?\u0026gt;\u003cbr /\u003e\n        \u003c/strong\u003eThe ID (number) of the category the post belongs to. This is static \n        data thatyou can use, for example to associate a category to an image, \n        or a css style.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t  \u003cstrong\u003e\u0026lt;?php trackback_rdf() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003c/strong\u003e\u003cbr /\u003e\n        This will include the RDF data that can be used by some weblog tools to locate your posts' trackback URLs.\u003cbr /\u003e\n\t\tYou should put this tag after the \u0026lt;?php the_content() ?\u0026gt; tag in your template, or just before the end of the loop.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t  \u003cstrong\u003e\u0026lt;?php dropdown_cats() ?\u0026gt;\u003cbr /\u003e\n\t\t\u003c/strong\u003ethis is a special tag, meant to be used in the template, but outside of the b2 loop. it will display a list of \u0026lt;option name=\"\u003cem\u003ex\u003c/em\u003e\"\u003e\u003cem\u003ecategory-name\u003c/em\u003e\u0026lt;/option\u003e, where \u003cem\u003ex\u003c/em\u003e is the number of the category and \u003cem\u003ecategory-name\u003c/em\u003e is the name of it.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003e0 or 1, depending if you want to have an option to display all categories (default is 1)\u003c/li\u003e\n\t\t  \u003cli\u003etext to display for the option to show all categories (default is \"All\")\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t  you can use it like this: \u003cbr /\u003e\u003cbr /\u003e\n\t\t  \u003ccode\u003e\u0026lt;form action=\"\u0026lt;?php echo $PHP_SELF ?\u003e\" method=\"get\"\u003e\u003cbr /\u003e\n\t\t  \u0026lt;?php dropdown_cats() ?\u003e\u003cbr /\u003e\n\t\t  \u0026lt;input type=\"submit\" name=\"submit\" value=\"view\" /\u003e\u003cbr /\u003e\n\t\t  \u0026lt;/form\u003e\u003c/code\u003e\n\t\t  \u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t  \u003cstrong\u003e\u0026lt;?php list_cats() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\t\u003c/strong\u003ethis is a special tag, meant to be used in the template, but outside of the b2 loop. it will display a list of the categories, with links to them. like in b2archive.php, each category is on a line, the only way you can change this is by editing b2.template.functions.php\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003e0 or 1, depending if you want to have an option to display all categories (default is 1)\u003c/li\u003e\n\t\t  \u003cli\u003etext to display for the option to show all categories (default is 'All')\u003c/li\u003e\n\t\t  \u003cli\u003esort by: possible values are 'name' and 'ID' (default is 'ID')\u003c/li\u003e\n\t\t  \u003cli\u003esorting order: possible values are 'asc' for ascending or 'desc' for descending (default is 'asc')\u003c/li\u003e\n\t\t  \u003cli\u003efilename, in case you want to display the categories' posts in another template (default is current template)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t    \u003cstrong\u003e\u0026lt;?php bloginfo() ?\u0026gt;\u003c/strong\u003e \u003cspan style=\"font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\t  This tag is out of the b2 loop.\u003cbr /\u003e\n\t\t  It outputs info about your weblog.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003estring: can be 'name' to display the name of your weblog (you set it in b2config.php), 'url', 'description', 'admin_email', 'rss_url' to display the URL of your b2rss.xml file, 'pingback_url' to display the URL of your xmlrpc.php file\u003cbr /\u003e (default string is 'name')\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t    \u003cstrong\u003e\u0026lt;?php single_post_title() ?\u0026gt;\u003c/strong\u003e \u003cspan style=\"font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\t  This tag is out of the b2 loop.\u003cbr /\u003e\n\t\t  It outputs the title of the post when you load the page with ?p= (see 'Usage' section for explanation). When the weblog page is loaded without ?p=, this tag doesn't display anything. Generally, you could use it like this:\u003cbr /\u003e\n\t\t  \u0026nbsp; \u0026nbsp;\u0026lt;title\u0026gt;\u0026lt;?php bloginfo('name') ?\u0026gt;\u0026lt;?php single_post_title() ?\u0026gt;\u0026lt;/title\u0026gt;\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eprefix string that will appear before the post's title (default is ' :: ')\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\t    \u003cstrong\u003e\u0026lt;?php single_cat_title() ?\u0026gt;\u003c/strong\u003e \u003cspan style=\"font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\t  This tag is out of the b2 loop.\u003cbr /\u003e\n\t\t  It outputs the title of the category when you load the page with ?cat= (see 'Usage' section for explanation). When the weblog page is loaded without ?cat=, this tag doesn't display anything. Generally, you could use it like this:\u003cbr /\u003e\n\t\t  \u0026nbsp; \u0026nbsp;\u0026lt;title\u0026gt;\u0026lt;?php bloginfo('name') ?\u0026gt;\u0026lt;?php single_cat_title() ?\u0026gt;\u0026lt;/title\u0026gt;\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eprefix string that will appear before the category's title (default is ' :: ')\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\t    \u003cstrong\u003e\u0026lt;?php single_month_title() ?\u0026gt;\u003c/strong\u003e \u003cspan style=\"font-family: 'Courier New',Courrier,mono; color: #ff9900; font-weight: bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n\t\t  This tag is out of the b2 loop.\u003cbr /\u003e\n\t\t  It outputs the name of the month when you load the page with ?m= (see 'Usage' section for explanation). When the weblog page is loaded without ?m=, this tag doesn't display anything. Generally, you could use it like this:\u003cbr /\u003e\n\t\t  \u0026nbsp; \u0026nbsp;\u0026lt;title\u0026gt;\u0026lt;?php bloginfo('name') ?\u0026gt;\u0026lt;?php single_month_title() ?\u0026gt;\u0026lt;/title\u0026gt;\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eprefix string that will appear before the month's name (default is ' :: ')\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\t\t  \u003cstrong\u003eNote:\u003c/strong\u003e The above three functions can be used together to produce the Title of the page:\u003cbr\u003e\n\t\t  \u0026nbsp; \u0026nbsp;\u0026lt;title\u0026gt;\u0026lt;?php bloginfo('name') ?\u0026gt;\u0026lt;?php single_post_title(' :: ') ?\u0026gt;\u0026lt;?php single_cat_title(' :: ') ?\u0026gt;\u0026lt;?php single_month_title(' :: ') ?\u0026gt;\u0026lt;/title\u0026gt;\u003cbr /\u003e\n          Only one, if any, of these functions will produce output, thus the page Title can be customize to the task being done.\n          \u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eMore about the author\u003c/strong\u003e of the post ? Here goes:\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_email() ?\u0026gt; - \u003c/strong\u003e the author's email.\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_url() ?\u0026gt;\u003c/strong\u003e - the author's url.\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_email() ?\u0026gt;\u003c/strong\u003e - the author's number of posts.\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_icq() ?\u0026gt;\u003c/strong\u003e - the author's ICQ number.\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_aim() ?\u0026gt;\u003c/strong\u003e - the author's AIM handle.\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_yim() ?\u0026gt;\u003c/strong\u003e - the author's Yahoo Messenger \n\t\thandle.\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_msn() ?\u0026gt;\u003c/strong\u003e - the author's MSN Messenger handle.\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php the_author_posts() ?\u0026gt;\u003c/strong\u003e - the author's post count.\u003cbr /\u003e\n        \u003cstrong\u003e\u0026lt;?php the_author_login() ?\u0026gt;\u003c/strong\u003e - the author's login name in b2.\n\t\tIf you want some static data about the \n        author, this is what you're searching for. You can, for example, associate \n        a picture with an author, like this: \u003cem\u003e\u0026lt;img src=\u0026quot;pictures/\u0026lt;?php \n        the_author_login() ?\u0026gt;.jpg\u0026quot; border=\u0026quot;0\u0026quot;\u0026gt;\u003c/em\u003e\u003cbr /\u003e\n        \u003cstrong\u003e\u0026lt;?php the_author_ID() ?\u0026gt;\u003c/strong\u003e \n        - the author's ID number in b2. This number is automatically set when \n        the user registers: to see the ID of an user, go to the Team page. This \n        is static data too, so you can use it like the_author_login() in associating \n        stuff with authors.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u003cbr /\u003e\n        Tags for permalinks\u003c/strong\u003e are:\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\n\t\t\u003cstrong\u003e\u0026lt;?php permalink_anchor() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003c/strong\u003e\u003cbr /\u003e\n\t\tthis will display \u0026lt;a name=\u0026quot;...\u0026quot;\u0026gt;\u0026lt;/a\u0026gt;, replacing \n\t\t\u0026quot;...\u0026quot; with the ID or the title of the post in the database.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003estring for kind of anchor: either 'id' that displays '50', or 'title' that displays 'title_of_post_50' (default is 'id')\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php permalink_link() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n        \u003c/strong\u003ethis will display the name of the file followed by #ID to link to \n        the post, in the month archive if archive-mode is \"monthly\".\u003cbr /\u003e\n        note: this tag does not display the link, for this you've got to type \n        \u0026lt;a href=\u0026quot;\u0026lt;?php permalink_link() ?\u0026gt;\u0026quot;\u0026gt;text of the \n        link\u0026lt;/a\u0026gt;.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003efile name, in case you want to link the archive to a different template (default is the current template)\u003c/li\u003e\n\t\t  \u003cli\u003estring for kind of link: either 'id' that appends '#50' to the link, or 'title' that appends '#title_of_post_50' (default is 'id')\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n        \u003cbr /\u003e\n        \u003cstrong\u003e\u0026lt;?php permalink_single() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003cbr /\u003e\n        \u003c/strong\u003ethis will display the name of the file followed by #ID to link to \n        the entire post (the linked page will also show the extended text on that post if it is an extended entry, and the comments).\u003cbr /\u003e\n        note: this tag does not display the link, for this you've got to type \n        \u0026lt;a href=\u0026quot;\u0026lt;?php permalink_single() ?\u0026gt;\u0026quot;\u0026gt;text of the \n        link\u0026lt;/a\u0026gt;.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003efile name, in case you want to use a different template for single posts (default is the current template)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eTags for comments, trackback, and pingback\u003c/strong\u003e are:\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php comments_popup_script() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003c/strong\u003e\u003cbr /\u003e\n        This will include the javascript that is required to open comments, trackback and pingback in popup windows.\u003cbr /\u003e\n\t\tYou should put this tag before the \u0026lt;/head\u003e tag in your template.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003ewidth (default is 400)\u003c/li\u003e\n\t\t  \u003cli\u003eheight (default is 400)\u003c/li\u003e\n\t\t  \u003cli\u003efile name, in case you want to use a different template for comments (default is b2commentspopup.php)\u003c/li\u003e\n\t\t  \u003cli\u003efile name, in case you want to use a different template for TrackBacks (default is b2trackbackpopup.php)\u003c/li\u003e\n\t\t  \u003cli\u003efile name, in case you want to use a different template for Pingbacks (default is b2pingbackspopup.php)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php comments_popup_link() ?\u0026gt;\u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003c/strong\u003e\u003cbr /\u003e\n        This will display the link to open comments in a popup window, with the number of comments.\u003cbr /\u003e\n\t\tTo edit the popup window's template, edit the file b2commentspopup.php (it's the default one for comments popup).\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tNote:\u003cbr /\u003e\n\t\tThe same tags exist for TrackBack and Pingback, respectively named '\u003cb\u003etrackback_popup_link()\u003c/b\u003e' and '\u003cb\u003epingback_popup_link()\u003c/b\u003e'. They take the same parameters.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003estring for comment-less posts (default is \u0026quot;no comments\u0026quot;)\u003c/li\u003e\n\t\t  \u003cli\u003estring for posts with one comment (default is \u0026quot;1 comment\u0026quot;)\u003c/li\u003e\n\t\t  \u003cli\u003estring for posts with 2 or more comments (default is \u0026quot;% comments\u0026quot;)\u003cbr /\u003eNote here that the sign \u0026quot;%\u0026quot; is then replaced by the number of \n        comments.\u003c/li\u003e\n\t\t  \u003cli\u003estring for CSS class, so you can have a styled link with class=\"\" (default is empty, no CSS class applied)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php comments_link() ?\u0026gt;\u003cbr /\u003e\n        \u003c/strong\u003e This is a bit like permalink_link, it will display an URL to the \n        comments page, but again you'll have to create the link tag.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tNote:\u003cbr /\u003e\n\t\tThe same tags exist for TrackBack and Pingback, respectively named '\u003cb\u003etrackback_link()\u003c/b\u003e' and '\u003cb\u003epingback_link()\u003c/b\u003e'. They take the same parameters.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003efile name, in case you want to use a different template for comments (default is the current template)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cbr /\u003e\n        \u003cstrong\u003e\u0026lt;?php comments_number() ?\u0026gt;\u003c/strong\u003e \u003cbr /\u003e\n        This displays the number of comments that have been posted on this post. \n        Example: \u0026quot;5 comments\u0026quot;.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tNote:\u003cbr /\u003e\n\t\tThe same tags exist for TrackBack and Pingback, respectively named '\u003cb\u003etrackback_number()\u003c/b\u003e' and '\u003cb\u003epingback_number()\u003c/b\u003e'. They take the same parameters.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003estring for comment-less posts (default is \u0026quot;no comments\u0026quot;)\u003c/li\u003e\n\t\t  \u003cli\u003estring for posts with one comment (default is \u0026quot;1 comment\u0026quot;)\u003c/li\u003e\n\t\t  \u003cli\u003estring for posts with 2 or more comments (default is \u0026quot;% comments\u0026quot;)\u003cbr /\u003eNote here that the sign \u0026quot;%\u0026quot; is then replaced by the number of \n        comments.\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n        Example: \u003cem\u003e\u0026lt;?php comments_number(\u0026quot;no comment\u0026quot;,\u0026quot;1 comment\u0026quot;,\u0026quot;% \n        comments\u0026quot;) ?\u0026gt;\u003c/em\u003e\u003cbr /\u003e\n        \u003cbr /\u003e\n        This tag differs from v0.5's tag because in v0.5 and prior, it would only \n        display a number, not a text with it, so you could have terrible things \n        like \u0026quot;1 comments\u0026quot; (doh !)\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eNecessary: \u0026lt;?php include(\u0026quot;b2comments.php\u0026quot;) ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\tyou'll put this line where you want the comments to be placed on your \n\t\tpage.\u003cbr /\u003e\n        typically, under the post itself. don't worry, the comments only appear \n        if the page is called in the comments mode. (like this: url?c=1)\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eNecessary: \u0026lt;?php include(\u0026quot;b2trackback.php\u0026quot;) ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\tyou'll put this line where you want the TrackBacks to be placed on your \n\t\tpage.\u003cbr /\u003e\n        typically, under the post itself. don't worry, the TrackBacks only appear \n        if the page is called in the TrackBacks mode. (like this: url?tb=1)\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eNecessary: \u0026lt;?php include(\u0026quot;b2pingbacks.php\u0026quot;) ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\tyou'll put this line where you want the Pingbacks to be placed on your \n\t\tpage.\u003cbr /\u003e\n        typically, under the post itself. don't worry, the Pingbacks only appear \n        if the page is called in the Pingbacks mode. (like this: url?pb=1)\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003eTags that go in b2comments.php, b2trackback.php, b2pingbacks.php:\u003c/strong\u003e (these are easy too)\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php comment_author() ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php comment_author_email() ?\u0026gt; \u003c/strong\u003e - displays the e-mail address, but not the link\u003cbr /\u003e\n        \u003cstrong\u003e\u0026lt;?php comment_author_url() ?\u0026gt; \u003c/strong\u003e- displays the url, but not the \n        link\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php comment_author_email_link() ?\u0026gt; \u003c/strong\u003e \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e- displays a link to the comment's author's e-mail\u003cbr /\u003e\n        \u003cstrong\u003e\u0026lt;?php comment_author_url_link() ?\u0026gt; \u003c/strong\u003e \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e- displays a link to the comment's author's website\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters for \u003cstrong\u003ecomment_author_email_link()\u003c/strong\u003e and \u003cstrong\u003ecomment_author_url_link()\u003c/strong\u003e:\u003cul\u003e\n\t\t  \u003cli\u003estring for the link (default: \"email\"/\"url\" depending on the tag)\u003c/li\u003e\n\t\t  \u003cli\u003estring to display before the link (default is \" - \")\u003c/li\u003e\n\t\t  \u003cli\u003estring to display after the link (default is blank)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php comment_author_IP() ?\u0026gt;\u003c/strong\u003e  \n        - displays the IP of the comment's author\u003cbr /\u003e\n        \u003cstrong\u003e\u0026lt;?php comment_text() ?\u0026gt;\u003cbr /\u003e\n        \u0026lt;?php comment_date() ?\u0026gt; \u003c/strong\u003e- unlike the_date(), this tag \n        appears on every comment\u003cstrong\u003e\u003cbr /\u003e\n        \u0026lt;?php comment_time() ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters for \u003cstrong\u003ecomment_date()\u003c/strong\u003e and \u003cstrong\u003ecomment_time()\u003c/strong\u003e:\u003cul\u003e\n\t\t  \u003cli\u003eformat string (default is \"d.m.y\"/\"H:i:s\" depending on the tag)\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cstrong\u003e\u0026lt;?php trackback_url() ?\u0026gt; \u003cspan style=\"font-family: Courier New, Courrier, mono; color: #ff9900; font-weight:bold;\"\u003e*\u003c/span\u003e\u003c/strong\u003e\u003cbr /\u003e\n        This tag is out of the b2 TrackBacks loop.\u003cbr /\u003e\n\t\tIt will output the URL to TrackBack the post, that other people can copy and use in b2's posting interface to trackback this post.\u003cbr /\u003e\n\n\t\t  \u003cdiv class=\"params\"\u003eParameters:\u003cul\u003e\n\t\t  \u003cli\u003eno parameter\u003c/li\u003e\n\t\t  \u003c/ul\u003e\n\t\t  \u003c/div\u003e\n\t\t  \u003cbr /\u003e\n\n\t\t\u003cbr /\u003e\n\t\tIn b2comments.php b2trackback.php and b2pingbacks.php, like in the main template file, please keep the first \n\t\tPHP lines, the \u0026quot;while\u0026quot; lines, and the \u0026quot;}\u0026quot; lines.\u003cbr /\u003e\n        You can modify the form, but do not remove \u0026quot;\u0026lt;?php echo ... ?\u0026gt;\u0026quot; \n        and all the name=\u0026quot;...\u0026quot; attributes.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tTo \u003cstrong\u003einclude your archives:\u003c/strong\u003e\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php include(\u0026quot;b2archives.php\u0026quot;) ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\tthis will include the links to your archives, one link per line.\u003cbr /\u003e\n\t\tif your archive mode is \u0026quot;monthly\u0026quot;, it will display the names \n\t\tof the months and the years, like \u0026quot;july 2001\u0026quot;.\u003cbr /\u003e\n\t\tif your archive mode is \u0026quot;post by post\u0026quot;, it will display the \n\t\ttitles of your posts, one title per line. if a post is untitled it will \n\t\tdisplay the ID (number) of this post.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tTo \u003cstrong\u003einclude the calendar:\u003c/strong\u003e\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cstrong\u003e\u0026lt;?php include(\u0026quot;b2calendar.php\u0026quot;) ?\u0026gt;\u003c/strong\u003e\u003cbr /\u003e\n\t\tthis will include a table with the current month's calendar, each day when\n\t\tyou posted shows a link to this day's posts. You can customise this table\n\t\twith CSS classes:\n\t\t\u003cdiv class=\"params\"\u003e\n\t\t\u003cstrong\u003e.b2calendarmonth {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style that is used to display the month and year\u003c/i\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e.b2calendartable {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style of the \u0026lt;table\u003e tag (border etc...)\u003c/i\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e.b2calendarrow {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style of the \u0026lt;tr\u003e tag\u003c/i\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e.b2calendarheadercell {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style of the \u0026lt;td\u003e tag that shows the weekdays on the top of the table\u003c/i\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e.b2calendarcell {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style of the \u0026lt;td\u003e tags that show the days\u003c/i\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e.b2calendaremptycell {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style of the \u0026lt;td\u003e tags that are empty\u003c/i\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e.b2calendarlinkpost {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style of the link to the post\u003c/i\u003e\u003cbr /\u003e\n\t\t\u003cstrong\u003e.b2calendartoday {}\u003c/strong\u003e\u003cbr /\u003e \u0026nbsp; \u0026nbsp; \u003ci\u003ethe style of the day if it is today\u003c/i\u003e\n\t\t\u003c/div\u003e\u003c/blockquote\u003e\n\t  \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\t  \u003ca name=\"usage\"\u003e\u003c/a\u003e\u003ch1\u003eusage:\u003c/h1\u003e\n\t  \u003cp\u003eb2 relies a lot on the querystring, these variables passed with the URL \n        (note: to pass variables in the querystring, preceed the first variable \n        name with a '?' question mark and every other variables with a '\u0026amp;' \n        sign.)\u003cbr /\u003e\n        Most of the time you won't have to do anything about it, but if you want \n        to know how it works, it's here:\u003c/p\u003e\n\t  \u003cp\u003eHow to use the QueryString:\u003c/p\u003e\n\t  \u003cblockquote\u003e index.php\u003cstrong\u003e?m=200107\u003c/strong\u003e will display the month of July 2001.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\t\t  index.php\u003cstrong\u003e?m=20010701\u003c/strong\u003e will display all posts from July 1st, 2001.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n  \t\t  index.php\u003cstrong\u003e?w=20\u003c/strong\u003e will display the posts from the 20th week of the year, where January 1st is in the first week (according to PHP).\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\t\t  index.php\u003cstrong\u003e?p=50\u003c/strong\u003e will display the post labeled #50 in the database.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\t\t  index.php\u003cstrong\u003e?s=blue+house\u003c/strong\u003e will display the posts that match the \n\t\t  search request \u0026quot;blue house\u0026quot;.\u003cbr /\u003e\n\t\there is the code for a simple search box:\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003ccode\u003e\u0026lt;form name=\u0026quot;searchform\u0026quot; action=\u0026quot;\u0026lt;?php echo \n\t\t$PHP_SELF ?\u0026gt;\u0026quot; method=\u0026quot;get\u0026quot;\u0026gt;\u003cbr /\u003e\n\t\t\u0026lt;input type=\u0026quot;text\u0026quot; name=\u0026quot;s\u0026quot; /\u0026gt;\u003cbr /\u003e\n\t\t\u0026lt;input type=\u0026quot;submit\u0026quot; name=\u0026quot;submit\u0026quot; value=\u0026quot;search\u0026quot; \n\t\t/\u0026gt;\u003cbr /\u003e\n\t\t\u0026lt;/form\u0026gt; \u003c/code\u003e\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tindex.php\u003cstrong\u003e?cat=1\u003c/strong\u003e will display all posts that belong to category #1 (1 \n\t\tis the default). you can add/rename/delete categories from b2's interface.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\t\tindex.php\u003cstrong\u003e?author=1\u003c/strong\u003e will display all posts from the author #1\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n        index.php\u003cstrong\u003e?p=50\u0026c=1\u003c/strong\u003e will display the comments \n        and a form to add a comment below the post.\u003cbr /\u003e\n        you should use this variable only with \u003cstrong\u003ep=\u003c/strong\u003e, example: index.php\u003cstrong\u003e?p=50\u0026amp;c=1\u003c/strong\u003e.\u003cbr /\u003e\n        \u003cbr /\u003e\n        index.php\u003cstrong\u003e?p=50\u0026tb=1\u003c/strong\u003e will display the TrackBacks to the post #50.\u003cbr /\u003e\n        you should use this variable only with \u003cstrong\u003ep=\u003c/strong\u003e, example: index.php\u003cstrong\u003e?p=50\u0026amp;tb=1\u003c/strong\u003e.\u003cbr /\u003e\n        \u003cbr /\u003e\n        index.php\u003cstrong\u003e?p=50\u0026pb=1\u003c/strong\u003e will display the Pingbacks to the post #50.\u003cbr /\u003e\n        you should use this variable only with \u003cstrong\u003ep=\u003c/strong\u003e, example: index.php\u003cstrong\u003e?p=50\u0026amp;pb=1\u003c/strong\u003e.\u003cbr /\u003e\n        \u003cbr /\u003e\n        index.php\u003cstrong\u003e?p=50\u0026more=1\u003c/strong\u003e will display the extended entries' text. this, \n        too, should be used only with \u003cstrong\u003ep=\u003c/strong\u003e, for individual entries.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n        index.php\u003cstrong\u003e?p=50\u0026page=1\u003c/strong\u003e will display the first page of post #50. this, \n        again, should be used only with \u003cstrong\u003ep=\u003c/strong\u003e, for individual entries.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n        You can also mix these variables, example: index.php\u003cstrong\u003e?m=200107\u0026amp;s=hotdog\u003c/strong\u003e \n        will display the posts that match the search request \u0026quot;hotdog\u0026quot;, \n        but only in July 2001. \u003c/blockquote\u003e\n\t  \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\t  \u003ca name=\"xmlrpc\"\u003e\u003c/a\u003e\u003ch1\u003eXMLRPC interface:\u003c/h1\u003e\n\t\t\u003cp\u003eb2 now has a XMLRPC interface. The only API available right now is the Blogger\n\t\tAPI (complete specs \u003ca href=\"http://www.tswoam.co.uk/blogger_method_listing.html\"\u003ehere\u003c/a\u003e). There are talks about a new API that would cover a lot of weblog/CMS systems\n\t\tin the future: when it's ready, b2 will support it.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tThe \u003ca href=\"http://plant.blogger.com/api\"\u003eBlogger API\u003c/a\u003e has been\n\t\tcompletely emulated on b2, with some little differences:\u003c/p\u003e\n\n\t\t\u003cul\u003e\n\t\t\u003cli\u003eusing \u003cem\u003eblogger.getRecentPosts\u003c/em\u003e with the number 'zero' returns all\n\t\tposts in the blog\u003c/li\u003e\n\t\t\u003cli\u003e\u003cem\u003eblogger.getTemplate\u003c/em\u003e fetches your file $blogfilename (as specified in\n\t\tthe config), while \u003cem\u003eblogger.setTemplate\u003c/em\u003e overwrites it with the edited\n\t\tdata\u003c/li\u003e\n\t\t\u003cli\u003e\u003cem\u003eblogger.getUsersBlogs\u003c/em\u003e is a dummy function that returns '1' and\n\t\t$blogname, since b2 supports only one blog as of now\u003c/li\u003e\n\t\t\u003c/ul\u003e\n\t\t\n\t\t\u003cp\u003eIf you use blogger.newPost, your post is submitted without title and in category\n\t\t#1.\u003cbr /\u003e\u003cbr /\u003e\n\t\tHowever, you can type \u0026lt;title\u003emy title\u0026lt;/title\u003e and/or \u0026lt;category\u003e2\u0026lt;category\u003e\n\t\tin the body of your post to make its title be 'my title' and its category be #2\n\t\t(refer to your categories section to find out the ID numbers of the categories). b2 would then delete that extra info from the body of your post once it is posted.\u003cbr /\u003e\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tYou can now post to your b2 blog with tools like \u003ca href=\"http://blogbuddy.sourceforge.net\"\u003eBlogBuddy\u003c/a\u003e, \u003ca href=\"http://bloggar.cjb.net\"\u003eBloggar\u003c/a\u003e, \u003ca href=\"http://www.ubique.ch/wapblogger/\"\u003eWapBlogger\u003c/a\u003e (post from your Wap cellphone!), \u003ca href=\"http://radio.userland.com\"\u003eRadio Userland\u003c/a\u003e (which means you can use Radio's email-to-blog feature), and other tools that support the Blogger API ! :)\u003cbr /\u003e\u003cbr /\u003e\n\t\tYour XMLRPC server/path are as described here: if you login to b2 on http://mydomain.com/me/b2login.php, then you have:\u003c/p\u003e\n\n\t\t\u003cul\u003e\n\t\t\u003cli\u003eserver: http://mydomain.com/me\u003c/li\u003e\n\t\t\u003cli\u003epath: /me/xmlrpc.php\u003c/li\u003e\n\t\t\u003cli\u003ecomplete URL (just in case): http://mydomain.com/me/xmlrpc.php\u003c/li\u003e\n\t\t\u003c/ul\u003e\n\n\t\t\u003cp\u003eThere's also a b2-specific method: b2.getCategories. Request it with 3 strings: blog_ID (use '1'), username, password. The response is an array of structs with strings categoryID and categoryName.\u003cbr /\u003e\n\n\t\t\u003cbr /\u003e\n\t\t\u003c/p\u003e\n\t  \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\t  \u003ca name=\"postviaemail\"\u003e\u003c/a\u003e\u003ch1\u003ePost via Email:\u003c/h1\u003e\n\t\t\u003cp\u003eYou can post news from an email client !\u003cbr /\u003e\n\t\tBut first you'll have to edit b2config.php, filling the appropriate values for your POP3 email account (this interface doesn't support IMAP yet, only POP3, sorry).\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tOnce you have edited the config options, you can make your webserver execute b2mail.php every set amount of time (depending on your host's performance, this script can be resource intensive, so don't make it run every minute or you'll be kicked).\u003cbr /\u003e\n\t\tYou can do it with Cron-jobs, or if your host doesn't support it you can look into the various website-monitoring services, and make them check your b2mail.php URL.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cb\u003ePreliminary advice:\u003c/b\u003e\u003cbr /\u003e\n\t\tIt is strongly advised to send your email as text-only (Outlook and Outlook Express default to 'html', which may cause problems), but HTML email could work (the script would strip all your html tags though...).\u003cbr /\u003e\n\t\tIt is also advised not to use your public email address, but create a new one especially for this script. If you use your public email address and the script goes crazy posting every email on your blog and deleting all your emails, I can't take responsibility for this.\u003cbr /\u003e\n\t\tMake sure you delete any email sent to your blog in your 'Sent' folder too, just in case (you don't want someone to find your login and password in the 'Sent' folder).\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tThe script will \u003ci\u003edelete\u003c/i\u003e the emails that were used to post stuff on your weblog if it successfully posted your stuff. If it didn't manage to post, the email is not deleted.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cb\u003eHow to post:\u003c/b\u003e\u003cbr /\u003e\n\t\tNow to post something, here's how your email should look like:\u003c/p\u003e\n\t\t\u003cdiv class=\"params\"\u003e\n\t\t\u003cb\u003eTo:\u003c/b\u003e address@domain.com \u003cspan style='color: #999'\u003e(you set it in the config file)\u003c/span\u003e\u003cbr /\u003e\n\t\t\u003cb\u003eSubject:\u003c/b\u003e blog:the post's title \u003cspan style='color: #999'\u003e(you can change 'blog:' in the config file)\u003c/span\u003e\u003cbr /\u003e\n\t\t\u003cb\u003eBody:\u003c/b\u003e\u003cbr\u003e\n\t\tlogin:password \u003cspan style='color: #999'\u003e(example: \u003ci\u003eJack:Starwars\u003c/i\u003e)\u003c/span\u003e\u003cbr /\u003e\n\t\tThe content of the post, blah blah blah.\u003cbr /\u003e\n\t\tMore blah blah. ___\n\t\t\u003c/div\u003e\n\t\t\u003cp\u003e\n\t\tSubject must start with 'blog:', or any string you set in the config file (so that the script doesn't check EVERY email in your mailbox).\u003cbr /\u003e\n\t\tBody's first line must always be login:password, else the script will just skip the email.\u003cbr /\u003e\n\t\tIf you don't use '___' (or any body terminator that you set in the config file), the script will post the whole body, which is not what you want if you send email with Yahoo or Hotmail (you don't want their ads on your blog, do you ?).\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\t\u003cb\u003eSpecial cases for mobile phone email:\u003c/b\u003e\u003cbr /\u003e\n\t\tSome mobile phone service providers may allow you to send email with your mobile phone or PDA, but on such devices you can't always include line breaks. In such case, you have to set \u003ci\u003e$use_phoneemail = 1\u003c/i\u003e in b2config.php, and then here's how you write the email:\u003c/p\u003e\n\t\t\u003cdiv class=\"params\"\u003e\n\t\t\u003cb\u003eTo:\u003c/b\u003e address@domain.com\u003cbr /\u003e\n\t\t\u003cb\u003eSubject:\u003c/b\u003e blog:the post's title \u003cb\u003e:::\u003c/b\u003e\u003cbr /\u003e\n\t\t\u003cb\u003eBody:\u003c/b\u003e\u003cbr\u003e\n\t\tlogin:password \u003cb\u003e:::\u003c/b\u003e The content of the post, blah blah blah.___\n\t\t\u003c/div\u003e\n\t\t\u003cp\u003eYou will have to append ':::' (or whatever string you set in the config file) after the subject, and after the login:password.\u003cbr /\u003e\n\t\t\u003cbr /\u003e\n\t\tSome mobile phone service providers may not allow you to set a subject, and they'll make the subject be the first characters of the body, in which case you would send an email like this:\u003c/p\u003e\n\t\t\u003cdiv class=\"params\"\u003e\n\t\t\u003cb\u003eTo:\u003c/b\u003e address@domain.com\u003cbr /\u003e\n\t\t\u003cb\u003eBody:\u003c/b\u003e\u003cbr\u003e\n\t\tblog:the post's title \u003cb\u003e:::\u003c/b\u003e login:password \u003cb\u003e:::\u003c/b\u003e The content of the post, blah blah blah.___\n\t\t\u003c/div\u003e\n\n\t  \u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\t  \u003ca name=\"notes\"\u003e\u003c/a\u003e\u003ch1\u003enotes: \u003c/h1\u003e\n\t  \u003cp\u003eOn multi-user:\u003c/p\u003e\n\t  \u003cblockquote\u003eYou don't invite users, they can register on b2register.php.\u003cbr /\u003e\n\t\tThen you (as an admin) click the \u0026quot;+\u0026quot; next to their name in the \n\t\tuser-list, to upgrade their level to 1 or more, so they can post. If you \n\t\tdon't want an user to post anymore, just click \u0026quot;-\u0026quot; until their \n\t\tlevel is 0.\u003cbr /\u003e\n\t\tNote: you can now disable users registration altogether from the config file.\u003cbr /\u003e\n\t\t\u003cstrong\u003eLevels\u003c/strong\u003e are these:\u003cbr /\u003e\n\t\t0 - new user: can't post.\u003cbr /\u003e\n\t\t1 - user: can post \u0026amp; edit/delete their own posts.\u003cbr /\u003e\n\t\t3 \u0026amp; more - admin: can post, edit/delete other people's posts, and \n\t\tchange the options.\u003cbr /\u003e\n\t\tAny user whose level is higher than 1, can edit/delete the posts and change \n\t\tthe level of users whose level is inferior. Example: a level 2 user is \n\t\tnot an admin, but can edit the posts of level 1 users, and up the level \n\t\tof a new user from 0 to 1.\u003cbr /\u003e\n\t\t  \u003cbr /\u003e\n\t\t  Usually, you'll want to have a team of only level 1 users except you. \n\t\t;)\u003cbr /\u003e\n\t\t\u003cstrong\u003eNote:\u003c/strong\u003e you can modify a variable in b2config.php, to enable new \n\t\tusers to post once they've registered.\u003cbr /\u003e\n        If you don't want users to register on your blog at all, just delete b2register.php \n        once you've registered your user account.\u003c/blockquote\u003e\n\t  \u003cp\u003e\u003cbr /\u003e\n\t\tFinal notes:\u003c/p\u003e\n\t  \u003cblockquote\u003eb2 is functionnal, but a lot of coding and code clean-up remain \n        to be done.\u003cbr /\u003e\n        If you've got suggestions, ideas, or comments, or if you found a bug, \n        why not joining us in the \u003ca href=\"http://tidakada.com/board/\"\u003eForums\u003c/a\u003e \n        ?\u003cbr /\u003e\n        If you can code in PHP, you'll see the structure of b2 is flexible enough \n        to allow for more functions and sections to be added.\u003c/blockquote\u003e\n\t  \u003cp\u003e\u003cbr /\u003e\n\t\tCopyright notes:\u003c/p\u003e\n\t  \u003cblockquote\u003eb2 is \u0026copy;2001, 2002 Michel Valdrighi - \u003ca href=\"mailto:m@tidakada.com?subject=b2\"\u003em@tidakada.com\u003c/a\u003e \n        - \u003ca href=\"http://tidakada.com\" target=\"_blank\"\u003ehttp://tidakada.com\u003c/a\u003e\u003cbr /\u003e\n\t\tWherever third party code has been used, credit has been given in the \n\t\tcode's comments.\u003cbr /\u003e\n\t\tb2 is released under the GPL (see license.txt).\u003c/blockquote\u003e\n\t\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\n\u003c/body\u003e\n\u003c/html\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleogopal%2Fb2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fleogopal%2Fb2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fleogopal%2Fb2/lists"}