Skip to:
Content
Pages
Categories
Search
Top
Bottom

Search Results for 'code'

Viewing 25 results - 2,376 through 2,400 (of 32,467 total)
  • Author
    Search Results
  • #214187
    stefyonweb
    Participant

    Thank you Robin, here’s the code:

    <?php
    
    /**
     * bbPress Example Converter
     *
     * @package bbPress
     * @subpackage Converters
     */
    
    /**
     * Example converter base impoprter template for bbPress
     *
     * @since 2.3.0 bbPress (r4689)
     *
     * @link Codex Docs https://codex.bbpress.org/import-forums/custom-import
     */
    class snitz extends BBP_Converter_Base {
    
    	/**
    	 * Main Constructor
    	 */
    	public function __construct() {
    		parent::__construct();
    	}
    
    	/**
    	 * Sets up the field mappings
    	 */
    	public function setup_globals() {
    
    		/** Forum Section *****************************************************/
    
    		// Setup table joins for the forum section at the base of this section
    
    		// Old forum id (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_FORUM',
    			'from_fieldname'  => 'FORUM_ID',
    			'to_type'         => 'forum',
    			'to_fieldname'    => '_bbp_old_forum_id'
    		);
    
    		// Forum parent id (If no parent, then 0. Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_FORUM',
    			'from_fieldname'  => 'CAT_ID',
    			'to_type'         => 'forum',
    			'to_fieldname'    => '_bbp_old_forum_parent_id'
    		);
    
    		// Forum topic count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_FORUM',
    			'from_fieldname' => 'F_TOPICS',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_topic_count'
    		);
    
    		// Forum reply count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_FORUM',
    			'from_fieldname' => 'F_COUNT',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_reply_count'
    		);
    
    		// Forum total topic count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_FORUM',
    			'from_fieldname' => 'F_TOPICS',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_total_topic_count'
    		);
    
    		// Forum total reply count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_FORUM',
    			'from_fieldname' => 'F_COUNT',
    			'to_type'        => 'forum',
    			'to_fieldname'   => '_bbp_total_reply_count'
    		);
    
    		// Forum title.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_FORUM',
    			'from_fieldname'  => 'F_SUBJECT',
    			'to_type'         => 'forum',
    			'to_fieldname'    => 'post_title'
    		);
    
    		// Forum slug (Clean name to avoid confilcts)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_FORUM',
    			'from_fieldname'  => 'F_SUBJECT',
    			'to_type'         => 'forum',
    			'to_fieldname'    => 'post_name',
    			'callback_method' => 'callback_slug'
    		);
    
    		// Forum description.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_FORUM',
    			'from_fieldname'  => 'F_DESCRIPTION',
    			'to_type'         => 'forum',
    			'to_fieldname'    => 'post_content',
    			'callback_method' => 'callback_null'
    		);
    
    		// Forum display order (Starts from 1)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_FORUM',
    			'from_fieldname'  => 'F_ORDER',
    			'to_type'         => 'forum',
    			'to_fieldname'    => 'menu_order'
    		);
    
    		// Forum type (Category = 0 or Forum = 1, Stored in postmeta)
    		$this->field_map[] = array(
    	//		'from_tablename'  => 'FORUM_FORUM',
    	//		'from_fieldname'  => 'the_forum_type',
    			'to_type'         => 'forum',
    			'to_fieldname'    => '_bbp_forum_type',
    		//	'callback_method' => 'callback_forum_type'
           'default'      => 'forum'
    		);
    
    		// Forum status (Unlocked = 0 or Locked = 1, Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_FORUM',
    			'from_fieldname'  => 'F_STATUS',
    			'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')
    		);
    
    		// Setup the table joins for the forum section
    /*		$this->field_map[] = array(
    			'from_tablename'  => 'groups_table',
    			'from_fieldname'  => 'forum_id',
    			'join_tablename'  => 'forums_table',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING groups_table.forum_id = forums_table.forum_id',*/
    		//	'from_expression' => 'WHERE forums_table.forum_id != 1',
    /*			'to_type'         => 'forum'
    		);*/
    
    		/** Forum Subscriptions Section ***************************************/
    
    		// Subscribed forum ID (Stored in usermeta)
    	/*	$this->field_map[] = array(
    			'from_tablename'  => 'forum_subscriptions_table',
    			'from_fieldname'  => 'the_forum_id',
    			'to_type'         => 'forum_subscriptions',
    			'to_fieldname'    => '_bbp_forum_subscriptions'
    		);*/
    
    		// Subscribed user ID (Stored in usermeta)
    	/*	$this->field_map[] = array(
    			'from_tablename'  => 'forum_subscriptions_table',
    			'from_fieldname'  => 'the_user_id',
    			'to_type'         => 'forum_subscriptions',
    			'to_fieldname'    => 'user_id',
    			'callback_method' => 'callback_userid'
    		);*/
    
    		/** Topic Section *****************************************************/
    
    		// Setup table joins for the topic section at the base of this section
    
    		// Old topic id (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'TOPIC_ID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_old_topic_id'
    		);
    
    		// Topic reply count (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_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'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_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'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'FORUM_ID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_forum_id',
    			'callback_method' => 'callback_forumid'
    		);
    
    		// Topic author.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_AUTHOR',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_author',
    			'callback_method' => 'callback_userid'
    		);
    
    		// Topic author ip (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_IP',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_author_ip'
    		);
    
    		// Topic content.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_MESSAGE',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_content',
    			'callback_method' => 'callback_html'
    		);
    
    		// Topic title.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_SUBJECT',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_title'
    		);
    
    		// Topic slug (Clean name to avoid conflicts)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_SUBJECT',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_name',
    			'callback_method' => 'callback_slug'
    		);
    
    		// Topic status (Open or Closed)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_STATUS',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_old_closed_status_id',
    			'callback_method' => 'callback_topic_status'
    		);
    
    		// Topic parent forum id (If no parent, then 0)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'FORUM_ID',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_parent',
    			'callback_method' => 'callback_forumid'
    		);
    
    		// Sticky status (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_STICKY',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_old_sticky_status_id',
    			'callback_method' => 'callback_sticky_status'
    		);
    
    		// Topic dates.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_DATE',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_date',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_DATE',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_date_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_LAST_POST_DATE',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_modified',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_LAST_POST_DATE',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_modified_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_LAST_POST',
    			'to_type'         => 'topic',
    			'to_fieldname'    => '_bbp_last_active_time',
    			'callback_method' => 'callback_datetime'
    		);
    
        $this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'T_MESSAGE',
    			'join_tablename'  => 'thread',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING (threadid) WHERE post.parentid = 0',
    			'to_type'         => 'topic',
    			'to_fieldname'    => 'post_content',
    			'callback_method' => 'callback_html'
       );
        
    		// Setup any table joins needed for the topic section
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'TOPIC_ID',
    			'join_tablename'  => 'FORUM_TOPICS',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING FORUM_REPLY.TOPIC_ID = FORUM_TOPICS.TOPIC_ID',
    			'from_expression' => 'WHERE FORUM_FORUM.TOPIC_ID = 0',
    			'to_type'         => 'topic'
    		);
    
    		/** Tags Section ******************************************************/
    
    		
    
    		/** Topic Subscriptions Section ***************************************/
    
    		/** Favorites Section *************************************************/
    
    		// Favorited topic ID (Stored in usermeta)
    
    		/** Reply Section *****************************************************/
    
    		// Setup table joins for the reply section at the base of this section
    
    		// Old reply id (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'REPLY_ID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => '_bbp_old_reply_id'
    		);
    
    		// Reply parent forum id (If no parent, then 0. Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'FORUM_ID',
    			'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'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'TOPIC_ID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => '_bbp_topic_id',
    			'callback_method' => 'callback_topicid'
    		);
    
    		// Reply author ip (Stored in postmeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'R_IP',
    			'to_type'         => 'reply',
    			'to_fieldname'    => '_bbp_author_ip'
    		);
    
    		// Reply author.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'R_AUTHOR',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_author',
    			'callback_method' => 'callback_userid'
    		);
    
    		// Reply title and reply slugs
    		// Note: We don't actually want either a reply title or a reply slug as
    		//       we want single replies to use their ID as the permalink.
    
    		// Reply content.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'R_MESSAGE',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_content',
    			'callback_method' => 'callback_html'
    		);
    
    	/* Snizt doesnt use reply order
    		// Reply order.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'the_reply_order',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'menu_order'
    		);
    */
    		// Reply parent topic id (If no parent, then 0)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'TOPIC_ID',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_parent',
    			'callback_method' => 'callback_topicid'
    		);
    
    		// Reply dates.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'R_DATE',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_date',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'R_DATE',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_date_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'R_DATE',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_modified',
    			'callback_method' => 'callback_datetime'
    		);
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_REPLY',
    			'from_fieldname'  => 'R_DATE',
    			'to_type'         => 'reply',
    			'to_fieldname'    => 'post_modified_gmt',
    			'callback_method' => 'callback_datetime'
    		);
    
    		// Setup any table joins needed for the reply section
    	/*	$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_TOPICS',
    			'from_fieldname'  => 'TOPIC_ID',
    			'join_tablename'  => 'FORUM_REPLY',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING FORUM_TOPICS.TOPIC_ID = FORUM_REPLY.TOPIC_ID',
    			'from_expression' => 'WHERE FORUM_TOPICS.first_post != 0',
    			'to_type'         => 'reply'
    		);*/
    
    		/** User Section ******************************************************/
    
    		// Setup table joins for the user section at the base of this section
    
    		// Store old user id (Stored in usermeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'MEMBER_ID',
    			'to_type'         => 'user',
    			'to_fieldname'    => '_bbp_old_user_id'
    		);
    
    		// Store old user password (Stored in usermeta serialized with salt)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'M_PASSWORD',
    			'to_type'         => 'user',
    			'to_fieldname'    => '_bbp_password',
    			'callback_method' => 'callback_savepass'
    		);
    
    		// Store old user salt (This is only used for the SELECT row info for the above password save)
    	/*	$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'the_users_password_salt',
    			'to_type'         => 'user',
    			'to_fieldname'    => ''
    		);*/
    
    		// User password verify class (Stored in usermeta for verifying password)
    		/*$this->field_map[] = array(
    			'to_type'         => 'user',
    			'to_fieldname'    => '_bbp_class',
    			'default' => 'Example'
    		);*/
    
    		// User name.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'M_NAME',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'user_login'
    		);
    
    		// User nice name.
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_MEMBERS',
    			'from_fieldname' => 'M_NAME',
    			'to_type'        => 'user',
    			'to_fieldname'   => 'user_nicename'
    		);
    
    		// User email.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'M_EMAIL',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'user_email'
    		);
    
    		// User homepage.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'M_HOMEPAGE',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'user_url'
    		);
    
    		/* Snitz doesn't use user registered
    		// User registered.
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'the_users_registration_date',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'user_registered',
    			'callback_method' => 'callback_datetime'
    		);
    */
    /* Snitz doesn't use user status
    		// User status.
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_MEMBERS',
    			'from_fieldname' => 'the_users_status',
    			'to_type'        => 'user',
    			'to_fieldname'   => 'user_status'
    		);
    */
    
    		// User display name.
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_MEMBERS',
    			'from_fieldname' => 'M_NAME',
    			'to_type'        => 'user',
    			'to_fieldname'   => 'display_name'
    		);
    
    		// User Profile Field 1 (Stored in usermeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'M_AIM',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'aim'
    		);
    
    		// User Profile Field 2 (Stored in usermeta)
    		$this->field_map[] = array(
    			'from_tablename'  => 'FORUM_MEMBERS',
    			'from_fieldname'  => 'M_YAHOO',
    			'to_type'         => 'user',
    			'to_fieldname'    => 'yim'
    		);
    
    		// User Profile Field 3 (Stored in usermeta)
    		$this->field_map[] = array(
    			'from_tablename' => 'FORUM_MEMBERS',
    			'from_fieldname' => 'M_SIG',
    			'to_type'        => 'user',
    			'to_fieldname'   => '_bbp_snitz_user_sig'
    		);
    
    		// Setup any table joins needed for the user section
    	/*	$this->field_map[] = array(
    			'from_tablename'  => 'users_profile_table',
    			'from_fieldname'  => 'the_users_id',
    			'join_tablename'  => 'FORUM_MEMBERS',
    			'join_type'       => 'INNER',
    			'join_expression' => 'USING users_profile_table.MEMBER_ID = FORUM_MEMBERS.MEMBER_ID',
    			'from_expression' => 'WHERE FORUM_MEMBERS.MEMBER_ID != -1',
    			'to_type'         => 'user'
    		);*/
    	}
    
    	/**
    	 * 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 status from Snitz v3.x numeric's to WordPress's strings.
    	 *
    	 * @param int $status Snitz v3.x numeric forum status
    	 * @return string WordPress safe
    	 */
    	public function callback_forum_status( $status = 1 ) {
    		switch ( $status ) {
    			case 0 :
    				$status = 'closed';     // Snitz forum status closed 'F_STATUS = 0'
    				break;
    
    			case 1 :
    			default :
    				$status = 'open';       // Snitz forum status open 'F_STATUS = 1'
    				break;
    		}
    		return $status;
    	}
    
    	/**
    	 * Translate the topic status from Snitz v3.x numeric's to WordPress's strings.
    	 *
    	 * @param int $status Snitz v3.x numeric topic status
    	 * @return string WordPress safe
    	 */
    	public function callback_topic_status( $status = 1 ) {
    		switch ( $status ) {
    			case 0 :
    				$status = 'closed';     // Snitz topic status closed 'T_STATUS = 0'
    				break;
    
    			case 1 :
    			default :
    				$status = 'publish';    // Snitz topic status open 'T_STATUS = 1'
    				break;
    		}
    		return $status;
    	}
    
    	/**
    	 * Translate the topic sticky status type from Snitz 3.x numeric's to WordPress's strings.
    	 *
    	 * @param int $status Snitz 3.x numeric forum type
    	 * @return string WordPress safe
    	 */
    	public function callback_sticky_status( $status = 0 ) {
    		switch ( $status ) {
    			case 1 :
    				$status = 'sticky';       // Snitz Sticky 'T_STICKY = 1'
    				break;
    
    			case 0  :
    			default :
    				$status = 'normal';       // Snitz normal topic 'T_STICKY = 0'
    				break;
    		}
    		return $status;
    	}
    }
    
    
    #214170
    neon67
    Participant

    For information. Solution Found = Tag Groups Plugin

    You can create several general pages(shortcodes, widjets…) with different profiles and group to one taxonomy bbpress, blogs, woocommerc… according to many characteristics.

    #214162
    llaves
    Participant

    Answering my own question –
    For the simple things, just go to Appearance->Customize. At the bottom is “Additional CSS”.
    Add your code in the editor provided.

    For something more complex, including creating a child theme or editing css in the child theme (or in the original theme, against all advice from those who know), a variety of file manager plug-ins will provide access to all files in the WP installation. I picked Filester – File Manager Pro because it looked like it would provide the access I need (and it did).

    #214157
    Mike Witt
    Participant

    I am not an expert on this, but what I do it to make a css subdirectory in my child theme. In that directory, css files should override the css in plugins (if they provide for the possibility of overrides, which bbPress does).

    There are more details here: https://codex.bbpress.org/step-by-step-guide-to-setting-up-a-bbpress-forum-part-2

    And here: https://codex.bbpress.org/bbpress-styling-crib/

    And there are also some plugins that can do these things for you.

    #214144
    robertherold
    Participant

    Thank you for the answer.
    It only works if User Base is users and the code you wrote includes users in it.
    If I rewrite User Base to user and also to user in the code, it will no longer work with this custom user root.

    #214143
    Robin W
    Moderator

    hmmm… the code works fine on my test site.

    I can only suggest it could be a theme or plugin issue

    Themes

    As a test switch to a default theme such as twentyfifteen, and see if this fixes.

    Plugins

    If that doesn’t work, also deactivate all plugins apart from bbpress and see if this fixes. if it does, re-enable one at a time to see which is causing the error.

    Then come back

    #214141
    Robin W
    Moderator

    I think this should do it, but check that it works, and try it from topics/replies freshness etc.

    add_filter ('bbp_get_user_slug' , 'rew_get_user_slug' ) ;
    
    function rew_get_user_slug ($slug) {
    	$default = 'users' ;
    	// Filter & return
    	return apply_filters( 'rew_get_user_slug', get_option( '_bbp_user_slug', $default ) );
    }

    Put this in your child theme’s function file –

    ie wp-content/themes/%your-theme-name%/functions.php

    where %your-theme-name% is the name of your theme

    or use

    Code Snippets

    neon67
    Participant

    OK thanks. Yet will be used the ‘display-none’.
    Over time, if I write the code, share it here.

    #214110
    Robin W
    Moderator

    your theme/elementor is doing this, not bbpress

    suggest you look in your theme colors to see if you can change

    background-color:#020413;

    #214109
    Robin W
    Moderator

    @kikismedia – bit confused

    If the code is on stackoverflow – can you post a link to it so that you help others who might find this thread
    if you have the code already – why are you asking~?

    Antipole
    Participant

    Don’t know how this happened, but I have found the actual bbp_notify_forum/topic_subscribers calls were missing from the code I posted. Now fixed and updated – added lines 75-84.

    #214102
    kikismedia
    Participant

    I saw a code on stackoverflow for bbpress annyomous (@robin-w it’s actually a good idea o but hard to code

    #214098
    bvaring
    Participant

    With this codex how do you specify only the latest replies or a specific number of replies for one topic.

    #214095
    Robin W
    Moderator

    has been asked before an JJJ who wrote most of bbpress says it would be really hard to code.

    #214092
    Robin W
    Moderator

    These are all issues with your theme, not bbpress.

    However in the spirit of helpfulness, I’ll do this last one, but after that you need to refer to your theme’s support channels.

    So the best I can do without spending considerable time is :

    @media only screen and (max-width: 480px) {
    
    #bbpress-forums div.bbp-reply-author img.avatar {
    	position: relative !important ;
    }
    
    #bbpress-forums .bbp-body div.bbp-reply-author {
    	padding-left: 0px !important;
    }

    Which puts it on then left, but is not perfect

    #214069
    Robin W
    Moderator

    oops sorry the value should be transparent

    so

    background-color: transparent !important;

    and padding in the original code is causing the name issue

    so

    padding: 5px 20px;

    makes it wrap

    add

    padding : none !important ;

    so you end up with

    .reply a {
    font-size: 12px !important;
    background-color: transparent !important;
    padding : none !important ;
    }
    #214064
    Robin W
    Moderator

    your themes style sheet

    http://www.rockin-wildcat.com/rwc/wp-content/themes/blog-diary-pro/style.css

    has line 2201 with

    .reply a {
    	display: inline-block;
    	border-radius: 0;
    	color: #fff;
    	position: relative;
    	font-size: 16px;
    	background-color: #46c4f3;
    	padding: 5px 20px;
    	-webkit-transition: all 0.3s ease-in-out;
    	-moz-transition: all 0.3s ease-in-out;
    	-ms-transition: all 0.3s ease-in-out;
    	-o-transition: all 0.3s ease-in-out;
    	transition: all 0.3s ease-in-out;
    }

    the background-color: #46c4f3; element is causing the box issue, and the font-size: 16px; the text issue

    I’d suggest you add these to the custom css area of your theme

    .reply a {
    	
    	font-size: 12px !important;
    	background-color: none !important;
    }

    you can adjust the font-size to whatever value you wish

    #214056
    Robin W
    Moderator

    yes this seems to be a bug.

    in

    \bbpress\includes\forums\functions.php

    line 197 has

    // No forum parent was passed (should never happen)
    	if ( empty( $forum_parent_id ) ) {
    		bbp_add_error( 'bbp_new_forum_missing_parent', __( '<strong>ERROR</strong>: Your forum must have a parent.', 'bbpress' ) );

    but a top level forum will have zero so empty !

    (I’m not a bbpress author, I just help moderate here, so not under my direct powers to change)

    To correct this for another user, I did the following :

    created a hidden forum – then noted the ID (in this case 4537)

    then in

    \bbpress\templates\default\bbpress\form-forum.php

    changed line 138 etc. from

    <p>
    						<label for="bbp_forum_parent_id"><?php esc_html_e( 'Parent Forum:', 'bbpress' ); ?></label><br />
    
    						<?php
    							bbp_dropdown( array(
    								'select_id' => 'bbp_forum_parent_id',
    								'show_none' => esc_html__( '&mdash; No parent &mdash;', 'bbpress' ),
    								'selected'  => bbp_get_form_forum_parent(),
    								'exclude'   => bbp_get_forum_id()
    							) );
    						?>
    					</p>

    to

    <?php
    					//the code in incudes/forums/functions won't let post parent be blank.
    					//to get this to work, we have created a hidden forum in the site.  This forums ID is 4537
    					//if the hidden forum exists, then use this forums id 
    					//otherwise show the post parent section
    					$forum_parent_id = bbp_get_forum_id( 4537 );
    					if (!empty( $forum_parent_id )) { ?>
    					 <input type="hidden" id="bbp_forum_parent_id" name="bbp_forum_parent_id" value="4537">
    					 <?php
    					}
    					else {
    					?>
    					<p>
    						<label for="bbp_forum_parent_id"><?php esc_html_e( 'Parent Forum:', 'bbpress' ); ?></label><br />
    
    						<?php
    							bbp_dropdown( array(
    								'select_id' => 'bbp_forum_parent_id',
    								'show_none' => esc_html__( '&mdash; No parent &mdash;', 'bbpress' ),
    								'selected'  => bbp_get_form_forum_parent(),
    								'exclude'   => bbp_get_forum_id()
    							) );
    						?>
    					</p>
    					<?php } ?>

    This template then gets saved to your child themes directory as

    wp-content/themes/%your-theme-name%/bbpress/form-forum.php

    bbPress will now use this template instead of the original

    Finally, add an action to re-write the parent forum from 4537 to zero post forum creation

    add_action( 'bbp_new_forum_post_extras', 'ltc_limit_forum', 10 ,1  );
    
    function ltc_limit_forum ($forum_id) {
    	//this function is fired when a forum is created
    	//set post parent to zero
    	wp_update_post(
    		array(
    			'ID' => $forum_id, 
    			'post_parent' => 0
    			)
    	);
    }

    Put this in your child theme’s function file –

    ie wp-content/themes/%your-theme-name%/functions.php

    where %your-theme-name% is the name of your theme

    or use

    Code Snippets

    You could amend that function to have an if statement so if forum parent is 4537 then create forum parent as 0, but in this case there were no times when a sub forum was being created, so it was not needed.

    I know this is quite convoluted, but it worked !!

    There is a trac ticket for this issue somewhere, so the authors are aware

    #214054
    deandimarzo
    Participant

    I’m using the [bbp-forum-form] shortcode to allow forum moderators to add subforums on our site (is there a better way to do this?) and when submitting the form I get the error “ERROR: Your forum must have a parent.”

    I’ve dug through the source code thoroughly to figure out what would be causing this and I just can’t track it down. Any ideas?

    #214050
    smith512
    Participant

    Sorry, I forgot to add a code.
    add_filter( 'bbp_after_has_search_results_parse_args' , 'my_bbp_filter_search_results' );

    Thank you for pointing it out.

    #214049
    Milan Petrovic
    Participant

    Your code doesn’t look complete. You posted ‘my_bbp_filter_search_results’, but there is no filter it is tied into. Which filter did you use to hook this function too?

    I can recommend you trying my advanced search plugin: GD Power Search for bbPress – https://wordpress.org/plugins/gd-power-search-for-bbpress/ it allows you to select forums to search through and other things.

    Milan

    #214048
    smith512
    Participant

    After user searched key wards in one of the parent forums, I want to suggest topics that are a member of the parent forum.
    For example,
    Forum Top |- Forum B |-topic A
    | |-topic F
    |
    |- Forum C |-topic A
    |-topic Z

    If an user now in Forum B searches topic A, only show topic A in Forum B, not Forum C’s topic A.

    What I tried
    First, I add this cord to my child theme’s function.php.
    `function my_bbp_search_form(){
    ?>
    <div class=”bbp-search-form”>

    <?php bbp_get_template_part( ‘form’, ‘search’ ); ?>

    </div>
    <?php
    }
    add_action( ‘bbp_template_before_single_forum’, ‘my_bbp_search_form’ );`

    Next, Add a field to the search form. I override form-search.php in my child theme’s /bbpress directory.

    if ( bbp_allow_search() ) : ?>
    <?php $forum_id = bbp_get_forum_id(); ?>
    <div class="bbp-search-form">
    	<form role="search" id="bbp-search-form" method="get" action="">
    		<input type="text" value="" placeholder="Search <?php the_title(); ?> Topics"  name="s"/>
    		<input type="hidden" name="forum_id" value="<?php echo $forum_id; ?>"/>
    		<input type="submit"/>
    	</form>
    </div>

    Finally, I filter the search query to only search a specific forum. I add this code to my functions.php.

    
    <?php 
    function my_bbp_filter_search_results( $r ){
    	$s=htmlspecialchars($_GET['s'], ENT_QUOTES, 'UTF-8');
    	$forum_id = htmlspecialchars($_GET['forum_id'], ENT_QUOTES, 'UTF-8');
    if(isset($s)){
    	$args=array(
    	's'->$s,
    	'post_parent'->$forum_id,
    	);
            }
            return $r;
    }
    ?>

    However, it didn’t work so I want to know how to achieve this.

    In addition, I challenged another way like this.

    if(bbp_has_topics(array('s'->$s, 'post_parent'->$forum_id)))
            bbp_get_template_part('bbpress/loop', 'topics');

    This code is that I edited above last additional functon “my_bbp_filter_search_results()” in function.php.
    However, I can’t get search’s value(name=’s’) in the first place. I tried to use “echo $s;”, $s didn’t output the value. Where is the search results file of bbpress?

    Please advise me. Thanks for reading.

    #214045
    Robin W
    Moderator
    #214030
    uksentinel
    Participant

    If it is a direct copy, then I am not surprised it was rejected – thank you for spending your time with this challenge, but unless the code / design is unique, bbpress will keep rejecting.

    FYI – I have got around the problem by using a widget that works and created a short code from that and placed that shortcode in the top menu on my page, a bit of a fudge but it will do for now.

    Thanks for trying 😉

    #214027
    hellojesse
    Participant

    My plugin is rejeceted, here is their reply:
    Your plugin has been rejected because it is a duplicate of another plugin, already hosted on WordPress.org

    My answer was this:
    The reason why I did it is because, I do have client and he checked your plugin and he said that "This plugin hasn’t been tested with the latest 3 major releases of WordPress." So he feels insecure. I have tested with WordPress and bbPress and it works fine.

Viewing 25 results - 2,376 through 2,400 (of 32,467 total)
Skip to toolbar