Skip to:
Content
Pages
Categories
Search
Top
Bottom

Importing from WBB4


  • sammmmy
    Participant

    @sammmmy

    Hello,

    i want to import my WBB4 board to bbPress an with a custom importer.
    The “basic” importer is from inspirationally and i wanted to translate it to WBB4
    Now i have a error on line 311 and 312…
    (but i think there will be more šŸ˜€ )

    I really hope that someone understands my problem and could help.

    
    <?php
    
    /**
     * Implementation of Wotlab Burning Board v3.x Forum Converter.
     *
     * @since bbPress (r5104)
     * @link Codex Docs http://codex.bbpress.org/import-forums/burningboard
     */
    class wbb3 extends BBP_Converter_Base {
    
    	/**
    	 * Main Constructor
    	 *
    	 * @uses wbb3::setup_globals()
    	 */
    	function __construct() {
    		parent::__construct();
    		$this->setup_globals();
    	}
    
    	/**
    	 * Sets up the field mappings
    	 */
    	public function setup_globals() {
    
    		/** Forum Section *****************************************************/
    
    		// Forum id (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_board',
    			'from_fieldname'  => 'boardID',
    			'to_type'         => 'forum',
    			'to_fieldname'    => '_bbp_forum_id'
    		);
    
    		// Forum parent id (If no parent, then 0. Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_board',
    			'from_fieldname'  => 'parentID',
    			'to_type'         => 'forum',
    			'to_fieldname'    => '_bbp_forum_parent_id'
    		);
    
    		// Forum topic count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'wbb1_board',
    			'from_fieldname' => 'threads',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_topic_count'
    		);
    
    		// Forum reply count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'wbb1_board',
    			'from_fieldname' => 'posts',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_reply_count'
    		);
    
    		// Forum total topic count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'wbb1_board',
    			'from_fieldname' => 'threads',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_total_topic_count'
    		);
    
    		// Forum total reply count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'wbb1_board',
    			'from_fieldname' => 'posts',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_total_reply_count'
    		);
    
    		// Forum title.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_board',
    			'from_fieldname'  => 'title',
    			'to_type'         => 'forum',
    			'to_fieldname'    => 'post_title'
    		);
    
    		// Forum slug (Clean name to avoid confilcts)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_board',
    			'from_fieldname'  => 'title',
    			'to_type'         => 'forum',
    			'to_fieldname'    => 'post_name',
    			'callback_method' => 'callback_slug'
    		);
    
    		// Forum description.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_board',
    			'from_fieldname'  => 'description',
    			'to_type'         => 'forum',
    			'to_fieldname'    => 'post_content',
    			'callback_method' => 'callback_null'
    		);
    
    		// Forum display order (Starts from 1)
    		$this->field_map[] = array(
    			'from_tablename' => 'wbb1_board',
    			'from_fieldname' => 'position',
    			'to_type'        => 'forum',
    			'to_fieldname'   => 'menu_order'
    		);
    
    		// Forum type (Forum = 0 or Category = 1, Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_board',
    			'from_fieldname'  => 'boardType',
    			'to_type'         => 'forum',
    			'to_fieldname'    => '_bbp_forum_type',
    			'callback_method' => 'callback_forum_type'
    		);
    
    		// Forum status (0=Open or 1=Closed, Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_board',
    			'from_fieldname'  => 'isClosed',
    			'to_type'         => 'forum',
    			'to_fieldname'    => '_bbp_status',
    			'callback_method' => 'callback_forum_status'
    		);
    
    		// Forum dates.
    		$this->field_map[] = array(
    			'to_type'      => 'forum',
    			'to_fieldname' => 'post_date',
    			'default'      => date('Y-m-d H:i:s')
    		);
    		$this->field_map[] = array(
    			'to_type'      => 'forum',
    			'to_fieldname' => 'post_date_gmt',
    			'default'      => date('Y-m-d H:i:s')
    		);
    		$this->field_map[] = array(
    			'to_type'      => 'forum',
    			'to_fieldname' => 'post_modified',
    			'default'      => date('Y-m-d H:i:s')
    		);
    		$this->field_map[] = array(
    			'to_type'      => 'forum',
    			'to_fieldname' => 'post_modified_gmt',
    			'default'      => date('Y-m-d H:i:s')
    		);
    
    		/** Topic Section *****************************************************/
    
    		// Topic id (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'threadID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_topic_id'
    		);
    
    		// Topic language (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'languageID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_language',
    			'callback_method' => 'callback_topic_language'
    		);
    
    		// Topic reply count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'replies',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_reply_count',
    			'callback_method' => 'callback_topic_reply_count'
    		);
    
    		// Topic total reply count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'replies',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_total_reply_count',
    			'callback_method' => 'callback_topic_reply_count'
    		);
    
    		// Topic parent forum id (If no parent, then 0. Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'boardID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_forum_id',
    			'callback_method' => 'callback_forumid'
    		);
    
    		// Topic author.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'userID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_author',
    			'callback_method' => 'callback_userid'
    		);
    
    		// Topic author ip (Stored in postmeta)
    		// Note: We join the 'wbb1_1_post' table because 'wbb1_1_thread' does not include author ip.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'ipAddress',
    			'join_tablename'  => 'wbb1_thread',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING (threadID) WHERE wbb1_post.postID = wbb1_thread.firstPostID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_author_ip'
    		);
    
    		// Topic content.
    		// Note: We join the 'wbb1_1_post' table because 'wbb1_thread' does not include topic content.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'message',
    			'join_tablename'  => 'wbb1_thread',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING (threadID) WHERE wbb1_post.postID = wbb1_thread.firstPostID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_content',
    			'callback_method' => 'callback_html'
    		);
    
    		// Topic title.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'topic',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_title'
    		);
    
    		// Topic slug (Clean name to avoid conflicts)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'topic',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_name',
    			'callback_method' => 'callback_slug'
    		);
    
    		// Topic parent forum id (If no parent, then 0)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'boardID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_parent',
    			'callback_method' => 'callback_forumid'
    		);
    
    		// Topic dates.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'time',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_date',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'time',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_date_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'time',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_modified',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'time',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_modified_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'lastPostTime',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_last_active_time',
    			'callback_method' => 'callback_datetime'
    		);
    
    		// Topic status (Open or Closed)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'isClosed',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_status',
    			'callback_method' => 'callback_topic_status'
    		);
    
    		/** Tags Section ******************************************************/
    
    		/**
    		 * WBB v3.x Forums do not support topic tags out of the box. WBB4?!
    		 */
    
    		/** Reply Section *****************************************************/
    
    		// Reply id (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'postID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => '_bbp_post_id'
    		);
    
    		// Reply parent forum id (If no parent, then 0. Stored in postmeta)
    		// Note: We join the 'wbb1_1_thread' table because 'wbb1_1_post' does not include forum id.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_thread',
    			'from_fieldname'  => 'boardID',
    			'join_tablename'  => 'wbb1_post',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING (threadID) WHERE wbb1_post.postID != wbb1_thread.firstPostID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => '_bbp_forum_id',
    			'callback_method' => 'callback_forumid'
    		);
    
    		// Reply parent topic id (If no parent, then 0. Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'threadID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => '_bbp_topic_id',
    			'callback_method' => 'callback_topicid'
    		);
    
    		// Reply author ip (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'ipAddress',
    			'to_type'         => 'reply',
    			'to_fieldname'    => '_bbp_author_ip'
    		);
    
    		// Reply author.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'userID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_author',
    			'callback_method' => 'callback_userid'
    		);
    
    		// Reply title.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'subject',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_title'
    		);
    
    		// Reply slug (Clean name to avoid conflicts)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'subject',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_name',
    			'callback_method' => 'callback_slug'
    		);
    
    		// Reply content.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'message',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_content',
    			'callback_method' => 'callback_html'
    		);
    
    		// Reply parent topic id (If no parent, then 0)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'threadID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_parent',
    			'callback_method' => 'callback_topicid'
    		);
    
    		// Reply dates.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'time',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_date',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'time',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_date_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'lastEditTime',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_modified',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'wbb1_post',
    			'from_fieldname'  => 'lastEditTime',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_modified_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    
    		/** User Section ******************************************************/
    
    		// Store old User id (Stored in usermeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wcf1_user',
    			'from_fieldname'  => 'userID',
    			'to_type'         => 'user',
    			'to_fieldname'    => '_bbp_user_id'
    		);
    
    		// Store old User password (Stored in usermeta serialized with salt)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wcf1_user',
    			'from_fieldname'  => 'password',
    			'to_type'         => 'user',
    			'to_fieldname'    => '_bbp_password',
    			'callback_method' => 'callback_savepass'
    		);
    
    		// User password verify class (Stored in usermeta for verifying password)
    		$this->field_map[] = array(
    			'to_type'         => 'user',
    			'to_fieldname'    => '_bbp_class',
    			'default'         => 'WBB4'
    		);
    
    		// User name.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wcf1_user',
    			'from_fieldname'  => 'username',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'user_login'
    		);
    
    		// User nice name.
    		$this->field_map[] = array(
    			'from_tablename' => 'wcf1_user',
    			'from_fieldname' => 'username',
    			'to_type'        => 'user',
    			'to_fieldname'   => 'user_nicename'
    		);
    
    		// User email.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wcf1_user',
    			'from_fieldname'  => 'email',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'user_email'
    		);
    
    		// User registered.
    		$this->field_map[] = array(
    			'from_tablename'  => 'wcf1_user',
    			'from_fieldname'  => 'registrationDate',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'user_registered',
    			'callback_method' => 'callback_datetime'
    		);
    
    		// Store Signature (Stored in usermeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'wcf1_user',
    			'from_fieldname'  => 'signature',
    			'to_fieldname'    => '_bbp_wbb3_user_sig',
    			'to_type'         => 'user',
    			'callback_method' => 'callback_html'
    		);
    	}
    
    	/**
    	 * This method allows us to indicates what is or is not converted for each
    	 * converter.
    	 */
    	public function info() {
    		return '';
    	}
    
    	/**
    	 * This method is to save the salt and password together.  That
    	 * way when we authenticate it we can get it out of the database
    	 * as one value. Array values are auto sanitized by WordPress.
    	 */
    	//public function callback_savepass( $field, $row ) {
    		//$pass_array = array( 'hash' => $field, 'salt' => $row['salt'] );
    		//return $pass_array;
    	}
    
    	/**
    	 * This method is to take the pass out of the database and compare
    	 * to a pass the user has typed in.
    	 */
    
    	//public function authenticate_pass( $password, $serialized_pass ) {
    	//	$pass_array = unserialize( $serialized_pass );
    		//return ( $pass_array['hash'] == md5( md5( $password ). $pass_array['salt'] ) );
    	}
    
    	/**
    	 * Translate the forum type from WBB v3.x numeric's to WordPress's strings.
    	 *
    	 * @param int $status WBBx v3.x numeric forum type
    	 * @return string WordPress safe
    	 */
    	public function callback_forum_type( $status = 0 ) {
    		switch ( $status ) {
    			case 1 :
    				$status = 'category';
    				break;
    
    			case 0  :
    			default :
    				$status = 'forum';
    				break;
    		}
    		return $status;
    	}
    
    	/**
    	 * Translate the forum status from WBB v3.x numeric's to WordPress's strings.
    	 *
    	 * @param int $status WBB v3.x numeric forum status
    	 * @return string WordPress safe
    	 */
    	public function callback_forum_status( $status = 0 ) {
    		switch ( $status ) {
    			case 1 :
    				$status = 'closed';
    				break;
    
    			case 0  :
    			default :
    				$status = 'open';
    				break;
    		}
    		return $status;
    	}
    
    	/**
    	 * Translate the post status from WBB v3.x numeric's to WordPress's strings.
    	 *
    	 * @param int $status WBB v3.x numeric forum status
    	 * @return string WordPress safe
    	 *
    	 */
    	public function callback_topic_status( $status = 0 ) {
    		switch ( $status ) {
    			case 1 :
    				$status = 'closed';
    				break;
    
    			case 0  :
    			default :
    				$status = 'publish';
    				break;
    		}
    		return $status;
    	}
    
    	/**
    	 * Verify the topic reply count.
    	 *
    	 * @param int $count WBB v3.x reply count
    	 * @return string WordPress safe
    	 */
    	public function callback_topic_reply_count( $count = 1 ) {
    		$count = absint( (int) $count - 1 );
    		return $count;
    	}
    
    	/**
    	 * Set languages, add more languages if needed
    	 *
    	 * @param int $language WBB v3.x numeric forum status
    	 * @return string WordPress safe
    	 */
    	public function callback_topic_language( $language = 4 ) {
    		switch ( $language ) {
    			case 4 :
    				$language = 'German';
    				break;
    
    			case 5  :
    			default :
    				$language = 'English';
    				break;
    		}
    		return $language;
    	}
    
    	/**
    	* This callback processes any custom BBCodes with parser.php
    	*/
    	#protected function callback_html( $field ) {
    
    	#	require_once( bbpress()->admin->admin_dir . 'parser.php' );
    	#	$bbcode = BBCode::getInstance();
    	#	$bbcode->enable_smileys = false;
    	#	$bbcode->smiley_regex   = false;
    	#	return html_entity_decode( $bbcode->Parse( $field ) );
    	#}
    }
    
Viewing 25 replies - 1 through 25 (of 33 total)

  • sammmmy
    Participant

    @sammmmy

    can nobody help me?


    Robkk
    Moderator

    @robkk

    I just contacted devs for you.

    I’m not sure what you pasted above is the same as the original file I worked on with @inspirationally but here is a link to the latest copy I have, maybe try this version and go from there to ensure there are no errors in the version/revision you are using.

    https://gist.github.com/ntwb/41b8bb57df78d1a1bd01

    Next up after that though I’m going to need some MySQL information on what the differences are between the database schema of WBB3 which the above was made for versus WBB4 which your trying to use it on? Do you have a DB schema for WBB4 or link to one via their site?


    sammmmy
    Participant

    @sammmmy

    the code that i posted above, was the “corrected” version of the wbb3 Code.

    I do not know how i can post you the Database schema, is there a good way to do this?

    For any code you can create anonymous (i.e. You do not require a GitHub account) and paste your code here https://gist.github.com it makes the code much easier to read than posting here on bbPress.org.

    The 4 tables would be wbb1_board, wbb1_thread, wbb1_post and wcf1_user

    Open up phpMyAdmin on your install, navigate to the database, click one of the 4 tables I listed above, then click structure, take a screen shot of similar to this example here.


    sammmmy
    Participant

    @sammmmy

    ok, thank you.

    here are the screenshots: http://imgur.com/a/rDteD

    wbb1_board

    wbb1_post

    wbb1_thread

    wcf1_user


    Robkk
    Moderator

    @robkk

    @sammmmy

    in the original code you will see

    'from_tablename' => 'wbb1_1_post',

    you listed it as being just wbb1_post so edit that to the correct table name.


    Robkk
    Moderator

    @robkk

    @sammmmy

    let us know if that fixes your import issues.


    sammmmy
    Participant

    @sammmmy

    Thanks for your help.
    I think that was correct, because in wbb3 it was wbb1_1_post

    …and in WBB4 it is wbb1_post

    or am i wrong?


    Robkk
    Moderator

    @robkk

    well for the wbb1_post it looks right.


    sammmmy
    Participant

    @sammmmy

    could it be the there is a problem with the user import?

    in wbb4 there is no salt

    https://gist.github.com/anonymous/bb7ddafb17dc41aa8e00

    in wbb4 there is no saltā€¦

    Yes, if that salt field is not in the user table then delete that block of code from your custom script.


    sammmmy
    Participant

    @sammmmy

    i thought so and used this code:

    https://gist.github.com/anonymous/526a8d9913e872ad5a43

    the import was starting but not more…
    I am still helpless


    Robkk
    Moderator

    @robkk

    any errors or did the import just seem not to finish?

    how many posts are you trying to import??


    sammmmy
    Participant

    @sammmmy

    2000user…. 5000threads… 150000posts… If this could be important.

    I used 1 line/sec
    The field says starting and does nothing more

    What happens if you logout and log in again, also fully refreshing the import page would do the same thing, if you’ve left the import page open for too long without doing anything then the MySQL connection is dropped from the database and is most often the cause of only seeing Starting without any other error.


    sammmmy
    Participant

    @sammmmy

    After refreshing and logging out/in (tested both)
    the side is showing the original “import side” with empty fields


    Robkk
    Moderator

    @robkk

    @sammmmy

    are you trying to import one giant file, or did you split it up into manageable chunks??


    sammmmy
    Participant

    @sammmmy

    I dont know how to answer that.
    I want to import a mysql database, i dont know if that is a file or whatever.

    On my server is an old wbb3 installation and i can import that very good.
    My wbb4 import is not running, i think the problem is the importer code….


    Robkk
    Moderator

    @robkk

    Could be the importer code.

    Is there anything else you can spot that is different between WBB3 and WBB4?


    Robkk
    Moderator

    @robkk

    @sammmmy

    See if this helps any.

    Import Troubleshooting


    sammmmy
    Participant

    @sammmmy

    i found a difference between wbb3 and wbb4.
    In the wbb1_1_board from wbb3 is the parentID “0”
    but in wbb1_board from wbb4 is the parentID “NULL” (german for zero).
    There are a lot of these fields….

    i try to change that and search for other differences


    Robkk
    Moderator

    @robkk

    Yeah that makes sense since the original file was for a user with a german/english forum I think.

    You may not need this either since the original user had a german forum.

    /**
    	 * Set languages, add more languages if needed
    	 *
    	 * @param int $language WBB v4.x numeric forum status
    	 * @return string WordPress safe
    	 */
    	public function callback_topic_language( $language = 4 ) {
    		switch ( $language ) {
    			case 4 :
    				$language = 'German';
    				break;
    
    			case 5  :
    			default :
    				$language = 'English';
    				break;
    		}
    		return $language;
    	}

    sammmmy
    Participant

    @sammmmy

    Yes that is an other problem, every languageID field is empty.
    how can i solve that?

    At first i have to solve the “NULL” problem.

    How can i change the importer that the empty fields with “NULL” will be imported?
    I think i need something like “if empty then…”

    Yes that is an other problem, every languageID field is empty.
    how can i solve that?

    You shouldn’t need to do anything, if there is no value it will default to English

    In the wbb1_1_board from wbb3 is the parentID ā€œ0ā€
    but in wbb1_board from wbb4 is the parentID ā€œNULLā€ (german for zero).
    There are a lot of these fieldsā€¦.

    Indeed Null is German for zero, also NULL is a special value in SQL databases.

    Typically I’d expect a reply to always have a parentID, that ID should be the topic ID.

    A topics parent ID will typically be the forum ID the topic belongs to.

    bbPress will treat replies without a parentID as an “orphaned” reply because there is no association between the topic and reply id’s.

    bbPress will treat topics without a parentID as a topic not associated with a specific forum, so unlike replies, bbPress does not require topics to have to have a forum id.

    Forums without a parentID are treated as “top level” forums, forums with a parentID of another forum are treated as “child” or “sub” forums of the parent forum.

    So some parentID values may be an integer 1, 13, 653 etc, sometimes it will be 0 meaning there is no parentID and other times it will be NULL, it is all dependant upon that forum softwares configuration and the context it’s being used in.

Viewing 25 replies - 1 through 25 (of 33 total)
  • You must be logged in to reply to this topic.
Skip to toolbar