![]() |
Logician NEWS: Drag Any Message to Your Main Page
This is a news script which will drag vb forum messages from your vb db to your non-vb main page/news page. There are a lot of good news script around but I needed a highly customizable main page news script with some special features and wrote it myself. I'm using it in my site's main page for a long time, but I was just too lazy to write installation/help documents to share it here, sorry! :)
FEATURES: * This script simply pulls forum messages which you marked as "news" from your vb database and post them in your non-vbulletin (main/other) page. * You can mark messages as "NEWS" in any forum you want (including private forums). You dont need to restrict your news to a specific forum. * You can drag any message to your main page, regardless of its date. So news is NOT supposed to be the most recent messages in your board. * You do NOT have to carry the whole message to your main page as news. You can import it all or simply take some part of it. So eg. you can drag a message's the first paragraph to your news page and link the thread for "Read More". * Moreover you can insert invisible custom NEWS text which will be dragged to your main page to your board messages, but not shown in the original forum thread. So your original thread message and news text on your main page can be different than eachother. * You can have sticky news in your main page (even if they are not sticky in your forum). * News does NOT need to be the first message in the thread. You can tag any reply message as news and pull it to your main page either. * Script parses ALL of your message icons/smilies (including your custom add-ons) and some of the important vBCode like: [url] [email] [img] [b] [i] [u] * You can specify which members may post news. * You can form your News' title seperately, apart from of the original thread/message title. * You can set maximum number of news shown in your main page. * You can set maximum number of characters that all shown news should not exceed. Some messages can be long and some can be short and if you set a character limit, the script will automatically compile enough news from your database to fit your web page's relevant part according to the limit you set. * You can enable/disable: News Poster Name News Date News Read Number News 'Send to a Friend' Link Comment number/Add comment button/Last commenter Will viewing news increase the original thread's view count or not News is sticky or not for ALL your news INDIVIDUALLY. * All news tags are invisible in the original thread. So forum readers do not notice any difference when you tag a message as news. * Dragging a message to your main page as news is as simple as inserting a hidden [news]Title of My News[/news] tag to your forum message. Well, these features are what I needed in my news script, so it should suffice to you too! :) It's an easy to install script and will work with ALL vbulletin versions because it's an add-on, not a hack. I can give support as much as I have time, but please ask here, not via email or PM. If you use the script, please click INSTALL. If you post the URL of your news page after installation, you can help other users see the script in action in different pages and in custom designs, thank you! Logician |
Demo Site:
* Demo news page (Check this first, it's in English) Sites using this script: * My Site's main page (Non-English, but you'll see it in real action) :) * Wildthinks' Site (German) * http://www.terrapinsgonewild.com/ One final comment: the graphical design of "news" in these pages are not mandatory by the script. You can design it as you like with plain HTML, so the script is flexible for design of the news. As you may already noticed, I and Wildthinks use it in different designs. |
HOW TO USE
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~ After you install the script, all you have to do is to mark some messages as "news" to drag them yo your main page. To tag messages you will use [news] [summary] [intro] and [options] tags, all of which are invisible in the original thread. If you authorized some forums or members for news posting in the newsconfig.php options, remember to use authorized member(s)' name and post in the authorized forum when marking your messages. (An optional precaution you may regard to prevent ordinary users to post news by using these tags) To mark a message, simply use [news] [/news] tag in your message body. The text you insert between, will be your news title in the main page. eg. [news]This is a News Title[/news] The [news] tag alone is enough (and the only required tag) to mark any message as news and it will drag the whole message to your main page. If you dont want to drag the entire message, but pull only some part from the begining(or else), use that part in [intro] [/intro].(And of course still [news] tag is required since it tags the message as news). For example you can use [intro] tag to take the first paragraph of your message to your main page and the script will link your original thread with a "Read More" remark. eg. [news]My News[/news] [intro]my introduction that will be dragged to news page[/intro] Other paragraphs which will NOT be dragged to news page.. If you want to use an entirely different text as your news body, use it in [summary] [/summary] tags. So for example in a hot thread you can send a reply to one of the members and in your message you can use hidden '[summary]We are discussing subject X in our forum.. Join![/summary]' tag, to post this text to your main page as news and link the original thread. Forum viewers will only see your original forum reply in the forum but main page visitors will be notified by your custom text. eg. [news]My News[/news] [summary]my news paragraph that will be dragged to news page but hidden in the original thread[/summary] Other paragraphs which will NOT be dragged to news page and visible to thread readers.. And finally we have an optional [options] [/options] tag, which helps you to customize your news. For all of your news, you can individually disable these options: Send a Friend Link(sendfriendoff), Thread view number(viewsoff), News Poster's name(posteroff), News Date(dateoff), News Comments&Add a Comment Link(commentsoff), News' last commenter's name(lastcommenteroff), whether news shown on the main page increases thread's view number or not (countoff), whether news is sticky (sticky) and whether you want to crunch (removes newlines) news text (crunch) in your main page. Use the tags in paranthesis to disable relevant option like [options]sendfriendoff lastcommenteroff countoff[/options] (Exceptions= (sticky) and (crunch). They enable the option.) Ok that's it.. Enjoy! \\=^)) Logician |
Wow! That looks great. Awesome job, Logician!
|
Looks great indeed, well done.
|
Great job Logician,
I was actually on the look for a good news script, this is even better as I can use now use vBulletin as well (which is how I preferred it). Keep up the great work! - SaintDog |
Looks great, I might test this one! Thanks! :D
|
Well, with a good 45 minutes of customizing and getting the hang of it, I finally got it looking and working exactly how I wanted it to. Great script, highly customizable and functional. Awesome work Logician, and thank you for a great, much needed vB addon. :)
|
Logician, ypou really the best!!!
|
pretty nice...
|
Alright, I probably have the dumbest question ever. First, let me say this script is FANTASTIC. However, is there any way for me to make it "View 179 Times" instead of "197 Times Viewed".
I've tried to do this on my own... but always got an error... so I must of been doing somethin wrong. Anyways... THANKS FOR THE GREAT SCRIPT! |
Quote:
$replace_text=$news[$i][views].' Times Viewed'; Replace it as: $replace_text='View '.$news[$i][views].' Times'; Enjoy.. ;) |
Ok, got almost everything working right. I just noticed that the time I posted the news is always the current time, so I need some help with that. I changed some return date () code, but it clearly didn't work. I want to have the time is this format (in PHP): M. jS, Y \a\\t g:i A. Can someone help me get the correct time in there?
|
Quote:
return date ("Y-d-m H:i:s", mktime($saat+$timeset, $dakika, $saniye, $ay, $gun, $yil)); and edit "Y-d-m H:i:s" part according to your wish.. |
mmm ... looks very handfull ... i have a try with your hack ...
Thx a lot Logician :) |
I tried that, and it returned: Dec. 31st, 1999 at 12:02 PM
|
Quote:
|
Quote:
|
Quote:
1- Please double check you modified the correct line: return date ("Y-d-m H:i:s", mktime($saat+$timeset, $dakika, $saniye, $ay, $gun, $yil)); will be: return date ("M. jS, Y \a\\t g:i A", mktime($saat+$timeset, $dakika, $saniye, $ay, $gun, $yil)); 2- Make sure your post date is correct: News date is the date of your thread message, not the date you inserted [news] tags. So if you tag an old message as news, its news date will be old either. If these do not work: a) Give me the URL of your board message and news page so that I can check them out (Edit: Never mind I already checked them) b) Send me your phpheader.php (as you modified)(delete password), newsconfig.php and your news message's entire text (with option tags you used). You can zip them and send via pm.. Regards, Logician |
Hi Logician,
thx for this very good script...any wish form me: - config with parameter for show only headers on site where i it wont and the completnews on a other page - colorsupport (don't work on my page) - more - button, when I have more then x-news - search the news.... :rambo: it's unbelievable, but works fine :cheeky: |
Although I love this script (GREAT JOB), one feature missing. I can't use my custom vb code within posts.
Example: I use and to center images in news posts. Of course, the code translates to HTML that does the centering work.Unfortunately, the news output does not center the images, and reveales the [center] codes. ANY FIXES? |
One more thing... it seems quotes don't work in titles. For example..
This type of title works perfectly This type of title "does not" work Is there any fix for this? |
Quote:
In newsconfig.php, find: preg_match("/(\[)(news)(])(\r\n)*([^\"]*)(\[\/news\])/siU", $news[$i][pagetext], $matches1); and replace it as: preg_match("/(\[)(news)(])(\r\n)*([^`]*)(\[\/news\])/siU", $news[$i][pagetext], $matches1); and find: $news[$i][pagetext]= preg_replace("/(\[)(news)(])(\r\n)*([^\"]*)(\[\/news\])/siU", "" ,$news[$i][pagetext]); and replace it as: $news[$i][pagetext]= preg_replace("/(\[)(news)(])(\r\n)*([^`]*)(\[\/news\])/siU", "" ,$news[$i][pagetext]); it should do the trick.. Quote:
Check the code: $news[$i][pagetext]= preg_replace("/(\[)(b)(])(.*)(\[\/b\])/siU", "<b>\\4</b>",$news[$i][pagetext]); You can use this sample to add extra vbcode. For example add this line after them: $news[$i][pagetext]= preg_replace("/(\[)(center)(])(.*)(\[\/center\])/siU", "<div align='center'>\\4</div>",$news[$i][pagetext]); Not tested but this should parse [center] tag correctly. Regards, Logician |
Quote:
What code would I add in order to parse list tags? I regularily use bulleted lists on my page, and would like to continue to do so. Is that possible? |
Quote:
Only this line should have been changed: return date ("M. jS, Y \a\\t g:i A", mktime($saat+$timeset, $dakika, $saniye, $ay, $gun, $yil)); A few lines above there is another line: $gelentarih=date("Y-d-m H:i:s",$gelentarih); it should left intact (You edited that one too) ;) Modify this line back to original and you should be fine.. @rkettner: You asked for the most difficult vbcode LOL. Give me sometime I'll see what I can do for you to have it parsed.. (no promise though) :) Regards, Logician |
Quote:
|
Hi!
Great hack! Only problem which I encountered is, that when I move my news over to the vBulletin database, the dates are lost on when they are added. Any suggestions? I could probably do it by hand, but that is a pain in the ass. :( Thanks, Till |
Quote:
There is also a hack around which helps admin to edit thread dates. This can save you from editing the dates with SQL. |
Quote:
Edit newsconfig.php, find: $news[$i][pagetext]= preg_replace("/(\[)(url)(])(\r\n)*([^\"]*)(\[\/url\])/siU", "<a href=\"\\5\" target=\"_blank\">\\5</a>",$news[$i][pagetext]); BEFORE that add: if (preg_match("/(\[)(list)(])(.*)(\[\/list\])/siU", $news[$i][pagetext],$matches1)) { $matches1[4]=preg_replace("/(\[\*\])(.*)/siU", "<li>\\2", $matches1[4]);echo $matches1[4]; $news[$i][pagetext]=preg_replace("/(\[)(list)(])(.*)(\[\/list\])/siU", $matches1[4], $news[$i][pagetext]); } This code will parse bulleted list tag. |
Quote:
yeah, I checked out the hack, however it's easier to do it by hand since - as you stated - there are not more than 10. But I am a little off with what field to modify, is it the "dateline" field? I can't really make out a field of type date or (unix)timestamp, other than the "editpost" one, which is too obvious. :) Thanks, Till |
Quote:
|
Quote:
PHP Code:
|
Oh, or "dateline" of course! :D
Thanks for your help, Logician! _till |
Pretty simple to add this NEWS HACK
Great instruction........ _____________________________________ For those who would like to add there site to my search engine the URL is http://swf-empire.com |
i have it installed and it's working well but i seem to be running into an issue marking a post as news:
-i have specified myself as being able to post news along with one other person. -i can mark a post as news using the [news][/news] including my posts i have made in the past. -i CANNOT mark other member's posts as news. I include the news codes but it does not show up on the homepage. -i had the other person able to post news post a thread and then i tried to mark it as news and it didnot pull this either. so is this correct? i must post the post in the forum myself to be able to mark it as news? what i wanted to do was go thru the forums and find post that were interesting and drag these to the homepage regardless of who originally made the post. i figure i can do this by allowing everyone to post news in the config file but i would prefer to avoid this if possible. thank you for the hack! frank |
Frank the owner of the post that has been tagged with [news] tag must be recognized as a news poster in options of the hack. So you cant edit someone's post and insert news tag to drag that news into your main page (UNLESS that person is allowed to post news).
Unfortunately it cant be otherwise:The hack can not know who inserted the tags, you or the post owner so it just checks the post owner's news permission if it runs into a [news] tag in a post. Possible solutions: a) as you figured it out, you can grant all news posting rights (or disable to option to grant it to everybody). Of course this is not recommended but it is not so bad as it looks because most people wouldnt know how to post news even if they are granted this privilage in the options. b) You can reply the thread yourself and use [summary] tag in this thread. So forum reader wouldnt know about the hidden news message in your post, but with summary tag you can drag any message text as you like to your main page. eg. you can put other users messages in between your summary tags. In my board I personally prefer to use summary tags to make a thread news thread. Hope this helps a bit.. |
yea i decided to do just that..reply and then use summary tags...only VERY minor issue i noticed with this is that if the thread is more than 1 page..and i reply and the reply is on the "nth" page..then the homepage link is to my reply rather than the first page of the thread...even if i use the linkme tag...i guess this way is more flexible for the news poster.
what i didnt notice in your reply is the case in which there's two people allowed to post news in the config file. one of these people posts into the forum WITHOUT using any tags. the other person then goes and adds the tags into the post previously made by the other individual. i.e. post A originated without news tags in post - news poster 1 news poster 2 adds news tags to post A post A does not get dragged to news page OH i just remembered one other thing i wanted to ask you! the message at the bottom of the page that says "Time to compile news .xxx secs" i have run time set to "0" but it is still showing the message. Oh yea one more thing :) the phpheader.php file seems to include alot of sensitive server info/pw...is this safe? i haven't a clue...im still trying to figure out how to use vbcodes :dead: thanks again! frank |
Quote:
Quote:
* Does the post have news tags? * Does the post owner has rights to use these tags? So please double check the post owner (not the one who edited) is granted news posting priviliges in the options part. And make sure other restrictions do not apply to that post. Say if you set to have 5 news in your main page and if it is 6th, it may not be dragged. (Edit: Also check caps of the name. For example if the user's name in db is FRANK and if you configured it in the options as Frank, it wont work) I dont think there is bug here but if you are sure, please let me know and I'll check. Quote:
Quote:
Besides it's not the only sensitive .php file in your server. Check yourboard/admin/config.php. ;) Logician |
MINOR BUG FIX
Here is a small bug fix. Please fix it if you installed the hack prior to the date of this message. The option to enable/disable news compilation time does not work (always on) if you dont fix it. (minor issue). After the fix you will be able to disable its display by setting the variable to 0. Thx to frank for reporting this. Edit phpheader.php, find: PHP Code:
Replace it as PHP Code:
Edit newsconfig.php find: PHP Code:
PHP Code:
PHP Code:
PHP Code:
|
$run_time = (string)substr(($time_end - $time_start),0,6);
i noticed this line above the if {$run_time} line do i have to change that line to $run_time_config={string....? nevermind, the fix got rid of the message! THANK YOU! :) frank ps i am using vb 2.2.6 and the hack is working fine for me. |
All times are GMT. The time now is 04:48 PM. |
Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
![]() |
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|