Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 General Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 05-29-2012, 01:03 PM
JabirA JabirA is offline
 
Join Date: Feb 2009
Posts: 77
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Change Tag Separators

Tags are separated by comma by default. How can I change this to a other character?


EDIT: Solved!!

1. in includes/class_taggablecontent.php there's a function split_tag_list(), and around line 295 there's this:

Change ',' to '\\\\'
Code:
$delimiters = array(',');
2.
Code:
public function fetch_rendered_tag_list()
	{
		$taglist = $this->fetch_existing_tag_list();
		return fetch_tagbits(implode(", ", $taglist));
	}
3. and then in includes/functions_bigthree.php around line 435
Code:
function fetch_tagbits($tags)
{
	global $vbulletin, $vbphrase, $show, $template_hook;

	$tagcount = 0;
	$tag_list = array();

	if ($tags)
	{
		$tag_array = explode(',', $tags);

		foreach ($tag_array AS $tag)
		{
			$row = array();
			$tag = trim($tag);
			if ($tag === '')
			{
				continue;
			}

			$tagcount++;
			$row['tag'] = fetch_word_wrapped_string($tag);
			$row['url'] = urlencode(unhtmlspecialchars($tag));
			$row['comma'] = '$vbphrase['comma_space']';
Reply With Quote
  #2  
Old 05-30-2012, 12:37 AM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

In Settings > Options > Tagging Options, there's a "Tag Separators" setting where you can enter additional separators, but for some reason you can't remove comma as a separator (you'd have to find the code that looks for commas and change it).
Reply With Quote
  #3  
Old 05-30-2012, 07:24 AM
JabirA JabirA is offline
 
Join Date: Feb 2009
Posts: 77
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yes I know that kh99. And I need help with that. I can't do that on my own.
Reply With Quote
  #4  
Old 05-30-2012, 08:11 AM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well, in includes/class_taggablecontent.php there's a function split_tag_list(), and around line 295 there's this:

Code:
			$delimiters = array(',');

which seems to be where comma is defined as a delimiter. You could try changing or deleting the comma from that line, but I haven't tried it and I don't know if it's the only place where you'd need to make a change.
Reply With Quote
  #5  
Old 05-30-2012, 11:54 AM
JabirA JabirA is offline
 
Join Date: Feb 2009
Posts: 77
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Already tried that one. Didn't help
Reply With Quote
  #6  
Old 05-30-2012, 12:25 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Well, that's one place, and changing it to a semicolon allowed me to enter tags separated by semicolons, but some of the display code still uses commas. In that same file around line 894 there's this:

Code:
	public function fetch_rendered_tag_list()
	{
		$taglist = $this->fetch_existing_tag_list();
		return fetch_tagbits(implode(", ", $taglist));
	}

and then in includes/functions_bigthree.php around line 435 there's function fetch_tagbits($tags) which expects a comma-separated list of tags. That function formats the list using a phrase $vbphrase['comma_space'] (and you probably don't want to change the text of that phrase because it's used in other places).
Reply With Quote
  #7  
Old 05-30-2012, 01:20 PM
JabirA JabirA is offline
 
Join Date: Feb 2009
Posts: 77
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by kh99 View Post
Well, that's one place, and changing it to a semicolon allowed me to enter tags separated by semicolons, but some of the display code still uses commas. In that same file around line 894 there's this:

Code:
	public function fetch_rendered_tag_list()
	{
		$taglist = $this->fetch_existing_tag_list();
		return fetch_tagbits(implode(", ", $taglist));
	}

and then in includes/functions_bigthree.php around line 435 there's function fetch_tagbits($tags) which expects a comma-separated list of tags. That function formats the list using a phrase $vbphrase['comma_space'] (and you probably don't want to change the text of that phrase because it's used in other places).
I dont understand. Do you want me to change something there?
Reply With Quote
  #8  
Old 05-30-2012, 01:29 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yeah, you would have to change this (the comma in red):

Code:
	public function fetch_rendered_tag_list()
	{
		$taglist = $this->fetch_existing_tag_list();
		return fetch_tagbits(implode(", ", $taglist));
	}

and then in includes/functions_bigthree.php around line 435, another comma in red (in the explode call), and the $vbphrase['comma_space'] you can replace a string:


Code:
function fetch_tagbits($tags)
{
	global $vbulletin, $vbphrase, $show, $template_hook;

	$tagcount = 0;
	$tag_list = array();

	if ($tags)
	{
		$tag_array = explode(',', $tags);

		foreach ($tag_array AS $tag)
		{
			$row = array();
			$tag = trim($tag);
			if ($tag === '')
			{
				continue;
			}

			$tagcount++;
			$row['tag'] = fetch_word_wrapped_string($tag);
			$row['url'] = urlencode(unhtmlspecialchars($tag));
			$row['comma'] = $vbphrase['comma_space'];

there may be other places as well, but try this.
Reply With Quote
  #9  
Old 05-30-2012, 01:37 PM
JabirA JabirA is offline
 
Join Date: Feb 2009
Posts: 77
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by kh99 View Post
Yeah, you would have to change this (the comma in red):

Code:
	public function fetch_rendered_tag_list()
	{
		$taglist = $this->fetch_existing_tag_list();
		return fetch_tagbits(implode(", ", $taglist));
	}

and then in includes/functions_bigthree.php around line 435, another comma in red (in the explode call), and the $vbphrase['comma_space'] you can replace a string:


Code:
function fetch_tagbits($tags)
{
	global $vbulletin, $vbphrase, $show, $template_hook;

	$tagcount = 0;
	$tag_list = array();

	if ($tags)
	{
		$tag_array = explode(',', $tags);

		foreach ($tag_array AS $tag)
		{
			$row = array();
			$tag = trim($tag);
			if ($tag === '')
			{
				continue;
			}

			$tagcount++;
			$row['tag'] = fetch_word_wrapped_string($tag);
			$row['url'] = urlencode(unhtmlspecialchars($tag));
			$row['comma'] = $vbphrase['comma_space'];

there may be other places as well, but try this.
If I want tags to be seperated with "\" , do I have to adjust this: $row['comma'] = $vbphrase['comma_space']; to : $row['comma'] = $vbphrase['\'];
Reply With Quote
  #10  
Old 05-30-2012, 01:42 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by JabirA View Post
If I want tags to be seperated with "\" , do I have to adjust this: $row['comma'] = $vbphrase['comma_space']; to : $row['comma'] = $vbphrase['\'];
No, I would just make it $row['comma'] = '\\ '; (the backslash needs to be escaped, so there's three chars in there - two backslashes and a space).
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 01:37 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05287 seconds
  • Memory Usage 2,260KB
  • Queries Executed 11 (?)
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
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (10)bbcode_code
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)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
  • (10)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