Перейти к содержимому

Реферальная программа Мегаплана

Партнерская программа Kredov

Фрагмент кода - добавления контента в БД

#1 FordogeN

FordogeN
  • Пользователь
  • 1 414 сообщений
  • Репутация: 0
0

Отправлено 23 Май 2011 - 12:07

Друзья, буду откровенен - лень ковыряться.
1. Подскажите, где находится фрагмент кода который отвечает за добавление контента в БД;
2. Дайте структуру таблиц БД с категориями и контентом, ну и название этих таблиц =)

Для тех кто задался вопросом "зачем мне эта инфа?" - буду писать модуль синхронизации со своим сайтом shotbox.ru.

Изображение

 

 

  • 0

Как настроить выдержку и диафрагму зеркального фотоаппарата



#2 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 02 Июнь 2011 - 11:24

FordogeN, хм, не думаю что кому-то захочется сидеть и формировать структуру БД

wp-includes/comment.php - Добавление в базу комментария:
строка 1226
	$wpdb->insert($wpdb->comments, $data);

wp-includes/post.php - Добавление в базу поста:
строка 2567
		if ( false === $wpdb->insert( $wpdb->posts, $data ) ) {

wp-includes/post.php - Добавление в базу вложения к посту:
строка 3645
		$wpdb->insert( $wpdb->posts, $data );

wp-includes/user.php - Добавление в базу пользователя:
строка 1486
		$wpdb->insert( $wpdb->users, $data + compact( 'user_login' ) );

А вот и метод вставки данных в БД и метод-helper (wp-includes/wp-db.php)
	/**
* Insert a row into a table.
*
* <code>
* wpdb::insert( 'table', array( 'column' => 'foo', 'field' => 'bar' ) )
* wpdb::insert( 'table', array( 'column' => 'foo', 'field' => 1337 ), array( '%s', '%d' ) )
* </code>
*
* @since 2.5.0
* @see wpdb::prepare()
* @see wpdb::$field_types
* @see wp_set_wpdb_vars()
*
* @param string $table table name
* @param array $data Data to insert (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
* @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
* A format is one of '%d', '%s' (decimal number, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
* @return int|false The number of rows inserted, or false on error.
*/
function insert( $table, $data, $format = null ) {
return $this->_insert_replace_helper( $table, $data, $format, 'INSERT' );
}

/* .... */

/**
* Helper function for insert and replace.
*
* Runs an insert or replace query based on $type argument.
*
* @access private
* @since 3.0.0
* @see wpdb::prepare()
* @see wpdb::$field_types
* @see wp_set_wpdb_vars()
*
* @param string $table table name
* @param array $data Data to insert (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
* @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
* A format is one of '%d', '%s' (decimal number, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
* @return int|false The number of rows affected, or false on error.
*/
function _insert_replace_helper( $table, $data, $format = null, $type = 'INSERT' ) {
if ( ! in_array( strtoupper( $type ), array( 'REPLACE', 'INSERT' ) ) )
return false;
$formats = $format = (array) $format;
$fields = array_keys( $data );
$formatted_fields = array();
foreach ( $fields as $field ) {
if ( !empty( $format ) )
$form = ( $form = array_shift( $formats ) ) ? $form : $format[0];
elseif ( isset( $this->field_types[$field] ) )
$form = $this->field_types[$field];
else
$form = '%s';
$formatted_fields[] = $form;
}
$sql = "{$type} INTO `$table` (`" . implode( '`,`', $fields ) . "`) VALUES ('" . implode( "','", $formatted_fields ) . "')";
return $this->query( $this->prepare( $sql, $data ) );
}

  • 0


Оформление форума – IPBSkins.ru