Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Latest Blog Feed in Postbit using Carp RSS Details »»
Latest Blog Feed in Postbit using Carp RSS
Version: 1.00, by nevetS nevetS is offline
Developer Last Online: Oct 2008 Show Printable Version Email this Page

Version: 3.5.0 Beta 3 Rating:
Released: 07-06-2005 Last Update: 07-06-2005 Installs: 34
Uses Plugins Template Edits
 
No support by the author.

I just posted this over at vbWebmaster Forums. I'm all excited because this is my first plugin and I know pretty much nothing about vbulletin. I got the idea from Shawn's forum at Digital Point

I just put this together for 3.5 using carp.

Step 1) Add a custom profile field for the RSS link. In my setup it was field5.
Step 2) Edit your postbit template as follows:
PHP Code:
<if condition="$post['field5']">
<
div class="smallfont">Recent Blog$blogentry</div>
        </if> 
Step 3) Create a new plugin. I named mine: Carp Configuration. Attach it to the "global_start" hook location.
Here is the code:
PHP Code:
require_once '/path/to/carp/carp.php';
CarpConf('cacheinterval',120);
/** You may want to set a cachepath specifically for your forum **/
CarpConf('cachepath','/where/you/want/your/cache/files/');
CarpConf('cacherelative',0);
/** You can omit the above two lines without a problem **/
CarpConf('cborder','');
CarpConf('poweredby','');
CarpConf('maxitems',1);
CarpConf('iorder','link'); 
Step 4) One more plugin. This one I called: Get Users Blog Entry
Attach this to hook location: postbit_display_start
PHP Code:
ob_start();
CarpCacheShow($post[field5]);
$blogentry ob_get_contents();
ob_end_clean(); 
That's it... away you go. If you don't have carp, you can check it out at: http://www.geckotribe.com/rss/carp/
I'm not sure if this will work with the free version, as I have the paid version.

I'm thinking about using grouper to set it up so I can parse atom files, but I don't know how important that will be.

Note: carp allows you to enter local paths and http paths for rss feeds. I've tried entering both in my user profile field successfully. You may want to disallow users from entering a local path just to be on the safe side. I don't have any code for that right now, but I'm sure there are some examples for field validation out there.

Carp has an option to store it's output in a variable ($carpoutput), but it didn't seem to work for me. That's why I used the ob_start and end_clean functions. If anybody has any feedback as to how this may be improved, I'm willing to listen.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #2  
Old 07-07-2005, 12:30 PM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thank you for sharing this with us.

Could you please be so kind to copy your instructions into a textfile and upload it to the modification. This is usefull so members can keep the instruction of installed modifications for later use when upgrading for example.
Reply With Quote
  #3  
Old 07-07-2005, 05:13 PM
nevetS nevetS is offline
 
Join Date: May 2005
Location: Sunny California
Posts: 97
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by MarcoH64
Thank you for sharing this with us.

Could you please be so kind to copy your instructions into a textfile and upload it to the modification. This is usefull so members can keep the instruction of installed modifications for later use when upgrading for example.
The attached zip file contains the instructions per request.
Reply With Quote
  #4  
Old 07-07-2005, 05:33 PM
Allan's Avatar
Allan Allan is offline
 
Join Date: Jun 2003
Location: France
Posts: 1,513
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

screen please
Reply With Quote
  #5  
Old 07-07-2005, 07:48 PM
nevetS nevetS is offline
 
Join Date: May 2005
Location: Sunny California
Posts: 97
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

screenies added.
Reply With Quote
  #6  
Old 07-07-2005, 07:54 PM
Allan's Avatar
Allan Allan is offline
 
Join Date: Jun 2003
Location: France
Posts: 1,513
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by nevetS
screenies added.
thank you

PS: I just meant that screen is important for those who are not English as me.
Reply With Quote
  #7  
Old 07-07-2005, 08:14 PM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by nevetS
The attached zip file contains the instructions per request.
Thank you for your fast response.
Reply With Quote
  #8  
Old 07-07-2005, 08:30 PM
nevetS nevetS is offline
 
Join Date: May 2005
Location: Sunny California
Posts: 97
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by MarcoH64
Thank you for your fast response.
No problem. I'm very impressed at how easy it is to build plugins in 3.5. It took me several hours to put this together, but I'm very new to vbulletin and I didn't know the in's and out's of anything.

In the future for this script, I'd like to add an installer that creates everything for you, but I don't quite know the best way for doing this yet and I'm going to have to add a function to search for the carp files and accepts some user input for location. I'm also not sure if I should just insert the code into the template or if I should just have the users do that themselves.

Before I go that far, I'm going to wait for any feedback about better ways to go about this. If there's a more performance friendly method, I should use it.

Carp is an caching RSS script. Which basically means it will look for a locally cached version fo the rss feed to display first and if one does not exist it will go out and grab the latest version online. The configuration above expires caches every two hours, so if you update your blog it can be up to two hours before the latest blog entry appears. If 10 different people have blogs configured and post in a thread it can mean that 10 different http queries need to go out to display the thread if it has not been viewed in a long time.

Another way to go about this is to set up a cron job to regularly update the cache files, but that could mean that every time it runs 150 http queries go out if you have 150 members with blog entries configured, and it very well could be the case that 50 of those members are not active posters.

These are all reasons to post the plugin here, though. As I get feedback, I can improve the script and everyone can benefit.
Reply With Quote
  #9  
Old 08-01-2005, 02:03 PM
gamebrink gamebrink is offline
 
Join Date: Jul 2005
Posts: 4
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by nevetS
No problem. I'm very impressed at how easy it is to build plugins in 3.5. It took me several hours to put this together, but I'm very new to vbulletin and I didn't know the in's and out's of anything.

In the future for this script, I'd like to add an installer that creates everything for you, but I don't quite know the best way for doing this yet and I'm going to have to add a function to search for the carp files and accepts some user input for location. I'm also not sure if I should just insert the code into the template or if I should just have the users do that themselves.

Before I go that far, I'm going to wait for any feedback about better ways to go about this. If there's a more performance friendly method, I should use it.

Carp is an caching RSS script. Which basically means it will look for a locally cached version fo the rss feed to display first and if one does not exist it will go out and grab the latest version online. The configuration above expires caches every two hours, so if you update your blog it can be up to two hours before the latest blog entry appears. If 10 different people have blogs configured and post in a thread it can mean that 10 different http queries need to go out to display the thread if it has not been viewed in a long time.

Another way to go about this is to set up a cron job to regularly update the cache files, but that could mean that every time it runs 150 http queries go out if you have 150 members with blog entries configured, and it very well could be the case that 50 of those members are not active posters.

These are all reasons to post the plugin here, though. As I get feedback, I can improve the script and everyone can benefit.

Yes I would like to see some sort of change so that (If 10 different people have blogs configured and post in a thread it can mean that 10 different http queries need to go out to display the thread if it has not been viewed in a long time.) doesn't happen.

Thanks for the code!
Reply With Quote
  #10  
Old 08-19-2005, 07:01 PM
EricaJoy EricaJoy is offline
 
Join Date: Sep 2002
Location: New York, NY
Posts: 236
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Could you kindly make the same sort of thing for vB 3.0.8? It would be very much appreciated.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 12:37 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.08258 seconds
  • Memory Usage 2,318KB
  • Queries Executed 23 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_php
  • (5)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (10)post_thanks_box
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (10)post_thanks_postbit_info
  • (9)postbit
  • (10)postbit_onlinestatus
  • (10)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete